@charset "UTF-8";


body, td, pre, input[type="text"], textarea, select {
  font-family: sans-serif;
  font-display: auto;
  font-size: 1.6rem;
  line-height: 1.4;
  color: #6f6f6f; }
  @media (max-width: 600px) {
    body, td, pre, input[type="text"], textarea, select {
      font-size: 1.4rem; } }

body {
  overflow: auto; }

.u-wrapper {
  margin: 0 auto;
  max-width: 150rem;
  text-align: left;
  padding: 0 1rem; }
  @media (min-width: 1601px) {
    .u-wrapper {
      margin: 0 auto;
      padding: 0 5rem;
      max-width: none; } }
  @media (min-width: 2001px) {
    .u-wrapper {
      padding: 0 10rem; } }

#cookieChoiceInfo {
  line-height: 20px;
  padding: 4px !important;
  font-size: 12px;
  background: rgba(0, 0, 0, 0.8) !important;
  border-bottom: none !important;
  color: #dddddd;
  top: inherit !important;
  bottom: 0 !important; }
  #cookieChoiceInfo a {
    color: #b1b1b1; }
  #cookieChoiceInfo #cookieChoiceDismiss {
    background: #777; }
    #cookieChoiceInfo #cookieChoiceDismiss:hover {
      background: #5e5e5e; }

.site-page {
  transform: translate3d(0, 0, 0);
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed; }
  .site-page.u-wrapper {
    justify-content: flex-start; }
  @media (min-width: 901px) {
    .site-page {
      display: flex;
      justify-content: center;
      flex-wrap: wrap; }
      .site-page > * {
        width: 100%; } }

.svgSprite svg symbol circle,
.svgSprite svg symbol path {
  fill: inherit;
  stroke: inherit;
  overflow: visible; }

.cms_bloc_text .cms_bloc_text_media_gauche .cms_bloc_media,
.cms_bloc_text .cms_bloc_text_media_droite .cms_bloc_media {
  max-width: 50%; }
  @media (max-width: 440px) {
    .cms_bloc_text .cms_bloc_text_media_gauche .cms_bloc_media,
    .cms_bloc_text .cms_bloc_text_media_droite .cms_bloc_media {
      max-width: 100%;
      padding: 0 0 1rem 0;
      float: none; } }
@media (max-width: 440px) {
  .cms_bloc_text .cms_bloc_text_two_columns > div.cms_bloc_text_gauche,
  .cms_bloc_text .cms_bloc_text_two_columns > div.cms_bloc_text_droite {
    margin: 0;
    width: 100%;
    display: block; } }

@media (max-width: 600px) {
  .cms_bloc_form .cms_bloc_form_container {
    width: 100%; } }
@media (max-width: 600px) {
  .cms_bloc_form .cms_bloc_form_field > .label,
  .cms_bloc_form .cms_bloc_form_field > .value {
    width: 100%;
    display: block; } }
.cms_bloc_form .cms_bloc_form_field.cms_bloc_form_field_antispam > .label {
  text-align: left;
  padding-right: 0; }
.cms_bloc_form .cms_bloc_form_field.cms_bloc_form_field_submit {
  padding-left: 0;
  text-align: center; }
  @media (max-width: 440px) {
    .cms_bloc_form .cms_bloc_form_field.cms_bloc_form_field_submit button[type="submit"] {
      padding-left: 2.2em;
      padding-right: 2.2em;
      max-width: 100%; } }
.cms_bloc_form .cms_bloc_form_field.cms_bloc_form_field_antispam > .value input {
  width: 100%; }
@media (max-width: 600px) {
  .cms_bloc_form .cms_bloc_form_field.cms_bloc_form_field_checkbox > p,
  .cms_bloc_form .cms_bloc_form_field.cms_bloc_form_field_radio > p {
    width: 100%;
    display: block; } }
.cms_bloc_form .cms_bloc_form_field > .value textarea {
  min-height: 16rem; }
  @media (max-width: 600px) {
    .cms_bloc_form .cms_bloc_form_field > .value textarea {
      min-height: 14rem; } }
  @media (max-width: 600px) {
    .cms_bloc_form .cms_bloc_form_field > .value textarea {
      min-height: 12rem; } }
  @media (max-width: 440px) {
    .cms_bloc_form .cms_bloc_form_field > .value textarea {
      min-height: 10rem; } }
.cms_bloc_form .cms_bloc_form_field_radio_value .label,
.cms_bloc_form .cms_bloc_form_field_checkbox_value .label {
  margin-left: .4em; }

.content ul, .content ol {
  position: relative;
  padding: .5rem 0; }
.content ul, .content ol {
  list-style-type: none; }
.content .cms_bloc .cms_bloc_html img {
  max-width: 100%; }
.content .cms_bloc .cms_bloc_media .jwplayer {
  max-width: 100%; }
.content .cms_bloc .cms_bloc_map .mm_carte {
  max-width: 100%; }
.content .cms_bloc ul.sitemap li, .content .cms_bloc.cms_bloc_form .cms_bloc_form_field_content ul li, .content .cms_bloc.cms_bloc_module .bl-product-long-description ul li, .content .cms_bloc.cms_bloc_text ul li {
  text-align: left;
  line-height: 1.4;
  padding-left: 2.4rem;
  padding-top: 2px;
  padding-bottom: 2px;
  overflow: auto;
  display: block; }
  .content .cms_bloc ul.sitemap li > *, .content .cms_bloc.cms_bloc_form .cms_bloc_form_field_content ul li > *, .content .cms_bloc.cms_bloc_module .bl-product-long-description ul li > *, .content .cms_bloc.cms_bloc_text ul li > * {
    display: inline-block; }
  .content .cms_bloc ul.sitemap li:before, .content .cms_bloc.cms_bloc_form .cms_bloc_form_field_content ul li:before, .content .cms_bloc.cms_bloc_module .bl-product-long-description ul li:before, .content .cms_bloc.cms_bloc_text ul li:before {
    content: '';
    display: inline-block;
    width: 0;
    height: 0;
    border-top: .4rem solid transparent;
    border-bottom: .4rem solid transparent;
    border-left: 0.4rem solid #debc4e;
    position: relative;
    left: -1.2rem;
    top: 0;
    margin: 0 -.4rem 0 0; }
.content .cms_bloc.cms_bloc_text ol {
  counter-reset: section; }
.content .cms_bloc.cms_bloc_text ol li {
  text-align: left;
  line-height: 1.4;
  padding-top: 2px;
  padding-bottom: 2px;
  padding-left: 2.3rem;
  position: relative;
  overflow: auto; }
  .content .cms_bloc.cms_bloc_text ol li:before {
    counter-increment: section;
    content: counters(section,".") ".";
    color: #dab439;
    position: absolute;
    transform: translateX(-100%);
    padding-right: 5px; }
.content a {
  text-decoration-skip-ink: auto; }
.content a:not(.bouton_1) {
  color: #debc4e;
  font-weight: inherit;
  text-decoration: underline; }
  .content a:not(.bouton_1):hover {
    text-decoration: none; }

.cms_bloc_title h2 {
  color: #debc4e;
  margin: .6em 0;
  font-size: 3.6rem;
  font-weight: 300;
  line-height: 1.15;
  overflow: hidden; }
  @media (max-width: 600px) {
    .cms_bloc_title h2 {
      font-size: 3.66rem; } }
  @media (max-width: 600px) {
    .cms_bloc_title h2 {
      font-size: 3.35rem; } }
  @media (max-width: 440px) {
    .cms_bloc_title h2 {
      font-size: 3rem; } }

h2.Titre_H2 {
  color: #debc4e;
  margin: .6em 0;
  font-size: 3.6rem;
  font-weight: 300;
  line-height: 1.15;
  overflow: hidden; }
  @media (max-width: 600px) {
    h2.Titre_H2 {
      font-size: 3.66rem; } }
  @media (max-width: 600px) {
    h2.Titre_H2 {
      font-size: 3.35rem; } }
  @media (max-width: 440px) {
    h2.Titre_H2 {
      font-size: 3rem; } }

h3.Titre_H3 {
  line-height: 1.2em;
  color: #debc4e;
  font-size: 3rem;
  margin: .4em 0;
  font-weight: normal;
  overflow: hidden; }
  @media (max-width: 600px) {
    h3.Titre_H3 {
      font-size: 2.8rem; } }
  @media (max-width: 600px) {
    h3.Titre_H3 {
      font-size: 2.4rem; } }

h4.Titre_H4 {
  line-height: 1.2em;
  color: #debc4e;
  font-size: 2.4rem;
  margin: .4em 0;
  font-weight: normal;
  overflow: hidden; }
  @media (max-width: 600px) {
    h4.Titre_H4 {
      font-size: 2.2rem; } }
  @media (max-width: 600px) {
    h4.Titre_H4 {
      font-size: 2rem; } }

h5.Titre_H5 {
  text-transform: uppercase;
  line-height: 1.2em;
  color: #debc4e;
  font-size: 1.8rem;
  margin: .4em 0;
  font-weight: 600;
  overflow: hidden; }
  @media (max-width: 600px) {
    h5.Titre_H5 {
      font-size: 1.7rem; } }
  @media (max-width: 600px) {
    h5.Titre_H5 {
      font-size: 1.6rem; } }

strong.accroche {
  font-size: 1.8rem;
  font-weight: 600; }
  @media (max-width: 600px) {
    strong.accroche {
      font-size: 1.7rem; } }
  @media (max-width: 600px) {
    strong.accroche {
      font-size: 1.6rem; } }

strong.mise_en_avant_1 {
  font-weight: bold;
  color: #debc4e; }

strong.mise_en_avant_2 {
  font-weight: bold;
  color: #344b6d; }

a.bouton_1 {
  -webkit-appearance: none;
          appearance: none;
  padding: 0;
  background: none;
  border: 0;
  outline: none;
  cursor: pointer;
  margin: 0;
  font-weight: 700;
  font-size: 1.4rem;
  color: #fff;
  text-decoration: none;
  padding: 1.4rem 3rem;
  background: #375074;
  display: inline-block;
  text-transform: uppercase;
  transition: background .2s linear; }
  a.bouton_1:hover {
    background: #314666; }
  @media (max-width: 600px) {
    a.bouton_1 {
      padding: 1.2rem 2.4rem; } }
  @media (max-width: 600px) {
    a.bouton_1 {
      padding: 1rem 2rem;
      font-size: 1.2rem; } }

button.bouton_1 {
  -webkit-appearance: none;
          appearance: none;
  padding: 0;
  background: none;
  border: 0;
  outline: none;
  cursor: pointer;
  margin: 0;
  font-weight: 700;
  font-size: 1.4rem;
  color: #fff;
  text-decoration: none;
  padding: 1.4rem 3rem;
  background: #375074;
  display: inline-block;
  text-transform: uppercase;
  transition: background .2s linear; }
  button.bouton_1:hover {
    background: #314666; }
  @media (max-width: 600px) {
    button.bouton_1 {
      padding: 1.2rem 2.4rem; } }
  @media (max-width: 600px) {
    button.bouton_1 {
      padding: 1rem 2rem;
      font-size: 1.2rem; } }

span.legende {
  font-size: 1.4rem;
  font-style: italic; }
  @media (max-width: 600px) {
    span.legende {
      font-size: 1.2rem; } }

blockquote.citation {
  margin: 1em 0;
  padding: .4em 1em;
  border-left: 0.4rem solid #debc4e;
  background: rgba(0, 0, 0, 0.04);
  overflow: hidden; }
  @media (max-width: 600px) {
    blockquote.citation {
      margin-left: 0;
      margin-right: 0; } }

.site-header {
  background: #fff;
  height: 6rem;
  position: sticky;
  top: 0;
  z-index: 9999; }
  @media (min-width: 601px) {
    .site-header {
      height: 6rem;
      padding-top: 1rem; } }
  @media (min-width: 901px) {
    .site-header {
      height: 12rem; } }
  @media (min-width: 1201px) {
    .site-header {
      height: 8rem; } }
  @media screen and (min-width: 1200px) and (min-height: 800px) {
    .site-header {
      height: 10rem; } }
  .site-header .u-wrapper {
    height: 100%;
    position: relative; }

.site-header__nav-toggle {
  width: 2.4rem;
  height: 2.4rem;
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  transition: background 300ms;
  cursor: pointer; }
  @media (min-width: 901px) {
    .site-header__nav-toggle {
      display: none; } }
  .site-header__nav-toggle span {
    width: 2.4rem;
    height: 0.4rem;
    background: #344b6d;
    display: block; }
  .site-header__nav-toggle:hover {
    height: 2.6rem; }
    .site-header__nav-toggle:hover span {
      background: #486896; }

.site-header__logo {
  width: 17rem; }
  @media (min-width: 901px) {
    .site-header__logo {
      margin-top: 2rem; } }
  .site-header__logo img {
    max-width: 100%;
    height: auto;
    vertical-align: middle;
    position: relative;
    left: 4px; }
    @media (min-width: 901px) {
      .site-header__logo img {
        left: 0; } }

.site-header__account--mobile {
  background: #debc4e;
  height: 3.4rem;
  width: 3rem;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer; }
  .site-header__account--mobile:hover {
    background: #e4c970; }

.site-header__meta {
  display: none;
  font-size: 1.2rem;
  font-weight: 400;
  color: #bcbcbc;
  position: absolute;
  top: .5rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }
  @media (min-width: 901px) {
    .site-header__meta {
      display: block;
      max-width: calc(100% - 65rem); } }
  @media (min-width: 1201px) {
    .site-header__meta {
      max-width: calc(100% - 70rem); } }

.site-header__main {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 100%;
  padding: 1rem; }
  @media (min-width: 901px) {
    .site-header__main {
      height: auto;
      padding: 0; } }

.site-header__account--mobile {
  text-align: center; }
  @media (min-width: 901px) {
    .site-header__account--mobile {
      display: none; } }
  .site-header__account--mobile svg {
    width: 1.5rem;
    height: 1.5rem; }
  .site-header__account--mobile span {
    display: block; }

.site-header__nav {
  display: none; }
  @media (min-width: 901px) {
    .site-header__nav {
      display: block; } }
  .site-header__nav > ul {
    display: flex; }

.site-header__nav-item {
  display: block;
  text-align: center;
  margin: 0 2rem; }
  @media (max-width: 1200px) {
    .site-header__nav-item {
      margin: 0 1rem; } }
  .site-header__nav-item:last-of-type {
    margin-right: 0; }
  .site-header__nav-item:hover span {
    background: #debc4e;
    color: #fafafa; }
  .site-header__nav-item:hover svg {
    fill: #debc4e; }
  .site-header__nav-item.is-selected > a > span:not(.day) {
    background: #debc4e;
    color: #fafafa; }
  .site-header__nav-item [class^="site-header__icon--"] {
    padding-top: .5rem; }
    .site-header__nav-item [class^="site-header__icon--"] svg {
      max-width: 2rem;
      max-height: 2rem;
      fill: #babbbf;
      transition: fill 300ms ease, opacity 300ms ease;
      opacity: 1; }
      .site-header__nav-item [class^="site-header__icon--"] svg g {
        fill: #babbbf; }
      @media screen and (min-height: 800px) {
        .site-header__nav-item [class^="site-header__icon--"] svg {
          max-width: 4rem;
          max-height: 4rem; } }
  .site-header__nav-item a {
    text-decoration: none;
    display: block; }
  .site-header__nav-item span {
    transition: all 300ms ease;
    background: rgba(222, 188, 78, 0);
    border-radius: 5rem;
    color: #344b6d;
    display: block;
    font-size: 1.4rem;
    font-weight: 600;
    padding: 0.3em 1em;
    text-decoration: none; }
  .site-header__nav-item--login, .site-header__nav-item--logout, .site-header__nav-item--account {
    margin-right: .5rem;
    margin-left: .5rem; }
    .site-header__nav-item--login [class^="site-header__icon--"], .site-header__nav-item--logout [class^="site-header__icon--"], .site-header__nav-item--account [class^="site-header__icon--"] {
      background: #344b6d;
      color: #fff;
      height: 100%;
      transition: background-color 300ms ease;
      border-radius: 0; }
      .site-header__nav-item--login [class^="site-header__icon--"] svg, .site-header__nav-item--logout [class^="site-header__icon--"] svg, .site-header__nav-item--account [class^="site-header__icon--"] svg {
        fill: currentColor; }
        .site-header__nav-item--login [class^="site-header__icon--"] svg g, .site-header__nav-item--logout [class^="site-header__icon--"] svg g, .site-header__nav-item--account [class^="site-header__icon--"] svg g {
          fill: currentColor; }
      .site-header__nav-item--login [class^="site-header__icon--"] span, .site-header__nav-item--logout [class^="site-header__icon--"] span, .site-header__nav-item--account [class^="site-header__icon--"] span {
        color: inherit;
        background: transparent !important; }
      .site-header__nav-item--login [class^="site-header__icon--"]:hover, .site-header__nav-item--logout [class^="site-header__icon--"]:hover, .site-header__nav-item--account [class^="site-header__icon--"]:hover {
        background: #3b557b; }

.site-header__nav--calendar {
  position: relative; }
  .site-header__nav--calendar span.day {
    font-size: 1rem;
    position: absolute;
    top: .3rem;
    left: 50%;
    transform: translate3d(-50%, 0, 0); }
    @media screen and (min-width: 600px) and (min-height: 800px) {
      .site-header__nav--calendar span.day {
        display: block;
        top: 1.7rem;
        font-size: 14px; } }
  .site-header__nav--calendar:hover .day {
    background: none;
    color: #344b6d; }

.site-header__date-select {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: #e9edf4;
  color: #202e44;
  font-weight: 600;
  height: 5rem; }
  .site-header__date-select .left,
  .site-header__date-select .right {
    width: 3rem;
    text-align: center; }
    .site-header__date-select .left svg,
    .site-header__date-select .right svg {
      height: 1.6rem;
      width: 1.6rem;
      fill: #88a1c6; }

#zone-diaporama {
  position: relative;
  overflow: hidden;
  z-index: 1; }
  .pageHome #zone-diaporama {
    height: 50rem; }
  .pageType #zone-diaporama {
    height: 25rem; }
  #zone-diaporama .cms_bloc_media {
    height: 100%; }
    #zone-diaporama .cms_bloc_media .diaporama-item {
      height: 100%;
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center center;
      position: relative;
      z-index: 5; }
      #zone-diaporama .cms_bloc_media .diaporama-item--hasContent::before {
        content: '';
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        background: rgba(0, 0, 0, 0.2);
        z-index: 0; }
      #zone-diaporama .cms_bloc_media .diaporama-item .u-wrapper {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translateX(-50%) translateY(-50%);
        max-height: 100%; }
      #zone-diaporama .cms_bloc_media .diaporama-item h2 {
        color: white;
        font-size: 4rem;
        font-weight: 400; }

#breadCrumb {
  width: 100%;
  font-size: 1.2rem;
  margin-bottom: 1em; }
  #breadCrumb ol {
    width: 100%;
    display: block; }
  #breadCrumb li:last-of-type a {
    text-decoration: none;
    color: #6f6f6f;
    font-weight: 600; }
  #breadCrumb a {
    color: #debc4e; }

@media (min-width: 1501px) {
  .site-main {
    flex: 1 1 auto;
    width: 100%;
    overflow: hidden; } }

.pageHome .site-main {
  width: 100%; }

.site-main__body {
  margin-bottom: 3rem; }
  @media (min-width: 1201px) {
    .site-main__body {
      display: flex;
      margin-bottom: 0; } }

.site-main__sidebar {
  width: 30rem;
  flex: 0 0 auto;
  display: none;
  margin-right: 2rem; }
  @media (min-width: 1201px) {
    .site-main__sidebar {
      display: block; } }

@media (min-width: 1201px) {
  .site-main__calendar {
    flex: 1 1 auto;
    width: 100%;
    overflow: hidden; } }

.site-main__calendar-adblock {
  margin-bottom: 1.2rem;
  max-width: 100%;
  display: none;
  display: block; }
  .site-main__calendar-adblock img {
    display: block;
    max-width: 100%;
    height: 100%; }
  .site-main__calendar-adblock--type {
    padding: 0 1rem;
    margin: 2rem 0 -1rem; }

.site-content--type {
  margin-bottom: 1rem; }
  @media (min-width: 901px) {
    .site-content--type {
      display: flex; } }
  .site-content--type .site-main {
    background: #fff;
    padding: 2rem 3rem;
    border-radius: 0.8rem;
    min-height: 60rem;
    width: auto;
    flex: 1 1 auto; }
    @media (min-width: 901px) {
      .site-content--type .site-main {
        order: 2; } }
    .site-content--type .site-main .site-adbar {
      flex: 1 0 auto;
      width: 20rem; }
  .site-content--type .site-sidebar--nav {
    display: none;
    background: #344b6d;
    padding: 2rem 1rem;
    border-radius: 0.8rem; }
    @media (min-width: 901px) {
      .site-content--type .site-sidebar--nav {
        align-self: flex-start;
        flex: 0 0 auto;
        display: block;
        width: 20rem;
        margin-right: 2rem;
        order: 1; } }
    @media (min-width: 1201px) {
      .site-content--type .site-sidebar--nav {
        padding: 2rem 3rem;
        width: 30rem; } }
  @media (min-width: 1001px) {
    .site-content--type .site-main {
      flex: 1 1 auto;
      width: auto; }
    .site-content--type .site-adbar {
      flex: 0 0 auto;
      width: 200px;
      margin-right: 0;
      top: 0;
      margin-left: 2rem; }
      .site-content--type .site-adbar img {
        width: 100%;
        height: auto; } }

.site-main__calendar-adblock {
  display: none; }
  @media screen and (min-width: 1200px) and (min-height: 500px) {
    .site-main__calendar-adblock {
      display: block;
      height: 40px; } }

.site-footer {
  height: 10rem;
  bottom: 0;
  width: 100%;
  z-index: 5; }
  @media (min-width: 901px) {
    .site-footer {
      height: 3rem;
      margin-bottom: 1rem; } }
  @media (min-width: 1201px) {
    .site-footer {
      height: auto;
      margin-top: 1rem; } }
  @media (min-width: 1201px) {
    .site-footer {
      display: block;
      margin-bottom: 1rem;
      align-self: flex-end; } }

.site-footer__wrapper {
  display: block;
  justify-content: center;
  align-items: center; }
  @media (min-width: 1201px) {
    .site-footer__wrapper {
      display: flex; } }

.site-footer__meta {
  font-size: 1.3rem;
  color: #6f6f6f;
  display: flex;
  justify-content: space-between;
  color: #344b6d;
  background: rgba(255, 255, 255, 0.9);
  padding: 0.5rem 1.7rem;
  border-radius: 0.5rem;
  flex-wrap: wrap; }
  @media (min-width: 1201px) {
    .site-footer__meta {
      font-size: 1rem; } }
  .site-footer__meta svg {
    vertical-align: -1.4px;
    width: 1.25rem;
    height: 1.25rem;
    margin-top: -0.25rem;
    margin-right: .5rem;
    fill: #344b6d; }
    .site-footer__meta svg.icon-world {
      transform: scale(1.1);
      margin-right: 0.6rem; }
  .site-footer__meta > li {
    list-style: none;
    margin-right: 1rem;
    margin-bottom: .9rem; }
    @media (min-width: 901px) {
      .site-footer__meta > li {
        margin-bottom: 0; } }
    @media (min-width: 1201px) {
      .site-footer__meta > li {
        width: 40%;
        margin-bottom: 0; } }
    .site-footer__meta > li:last-child {
      width: 100%; }
  .site-footer__meta .sep {
    display: none; }
  .site-footer__meta a {
    color: #344b6d;
    text-decoration: none; }
    .site-footer__meta a:hover {
      text-decoration: underline; }
  @media (min-width: 901px) {
    .site-footer__meta .sep {
      display: block; }
    .site-footer__meta > li {
      width: auto; }
      .site-footer__meta > li:last-child {
        width: auto; } }
  .site-footer__meta .sitemap-print a {
    text-decoration: none;
    display: inline-block;
    color: inherit;
    margin: 0 1rem 0; }
    .site-footer__meta .sitemap-print a i, .site-footer__meta .sitemap-print a span {
      display: inline-block;
      vertical-align: middle; }
    .site-footer__meta .sitemap-print a i {
      margin-right: .6rem; }
  .site-footer__meta .copyright a {
    text-decoration: none;
    color: inherit; }
  .site-footer__meta .copyright img {
    margin-bottom: -3px; }

@media (min-width: 1201px) {
  .site-footer__maj-icon {
    display: none; } }

.site-footer__maj-text {
  display: none; }
  @media (min-width: 1201px) {
    .site-footer__maj-text {
      display: inline-block; } }

.socialLinks {
  display: flex; }
  .socialLinks, .socialLinks > li {
    margin: 0;
    padding: 0;
    list-style-type: none; }
  .socialLinks > li {
    margin: 0 .2rem; }
  .socialLinks a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 3.6rem;
    height: 3.6rem;
    text-align: center;
    overflow: hidden;
    font-size: 0;
    color: inherit;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.05);
    text-decoration: none; }
    .socialLinks a svg {
      height: 2rem;
      width: 2rem;
      fill: currentColor; }
    .socialLinks a:hover {
      background: #debc4e;
      color: #fff; }
    .socialLinks a.facebookLink:hover {
      background: #3c5a99; }
    .socialLinks a.twitterLink:hover {
      background: #5ea9dd; }
    .socialLinks a.googleLink:hover {
      background: #d74536; }
    .socialLinks a.instagramLink:hover {
      background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%); }
    .socialLinks a.youtubeLink:hover {
      background: #e62117; }
    .socialLinks a.pinterestLink:hover {
      background: #cb2026; }
    .socialLinks a.viadeoLink:hover {
      background: #f4982b; }
    .socialLinks a.linkedinLink:hover {
      background: #1a85bc; }

.sitemapPrint .sitemapPrint-list {
  margin: 0;
  padding: 0;
  list-style-type: none;
  display: flex;
  align-items: baseline; }
.sitemapPrint .sitemapPrint-item {
  display: block; }
  .sitemapPrint .sitemapPrint-item:nth-child(n+2) {
    margin-left: 1em; }
.sitemapPrint .sitemapPrint-link {
  text-decoration: none;
  color: inherit;
  display: flex;
  align-items: center;
  transition: opacity .2s linear; }
  .sitemapPrint .sitemapPrint-link:hover {
    opacity: .6; }
  .sitemapPrint .sitemapPrint-linkIcon {
    width: 1em;
    height: 1em;
    display: inline-block;
    margin-right: .4em; }
    .sitemapPrint .sitemapPrint-linkIcon svg {
      width: 100%;
      height: 100%;
      fill: currentColor;
      color: inherit; }
  .sitemapPrint .sitemapPrint-linkLabel {
    display: inline-block; }

.site-content {
  position: relative;
  overflow-x: hidden;
  min-height: calc(100vh - 13rem);
  flex: 1 1 auto; }
  @media (min-width: 155rem) {
    .site-content {
      margin: 0; } }
  @media (min-width: 1001px) {
    .site-content {
      display: flex; } }
  @media (min-width: 901px) {
    .site-content {
      max-width: 150rem;
      min-height: unset;
      align-self: center;
      overflow-y: hidden; } }
  @media (min-width: 1601px) {
    .site-content {
      max-width: none; } }
  @media (min-width: 2001px) {
    .site-content {
      max-width: none;
      margin: 0 auto; } }

.site-content__live-cache {
  display: none; }

.site-page {
  min-height: calc(100vh - 6rem); }
  @media (min-width: 901px) {
    .site-page {
      display: flex;
      flex-direction: column;
      align-content: space-between;
      justify-content: space-around; } }
  @media (min-width: 601px) {
    .site-page {
      min-height: calc(100vh - 6rem); } }
  @media (min-width: 901px) {
    .site-page {
      min-height: calc(100vh - 12rem); } }
  @media (min-width: 1201px) {
    .site-page {
      min-height: calc(100vh - 8rem); } }
  @media screen and (min-width: 1200px) and (min-height: 800px) {
    .site-page {
      min-height: calc(100vh - 10rem); } }

@media (min-width: 601px) {
  .site-content__body {
    margin: 0 2rem; } }
@media (min-width: 901px) {
  .site-content__body {
    display: flex;
    max-width: 150rem;
    flex-wrap: wrap;
    align-items: flex-start; } }
@media (min-width: 155rem) {
  .site-content__body {
    margin: 0; } }

@media (min-width: 901px) {
  .site-content__header {
    width: 100%;
    max-width: 150rem;
    margin: 0 auto 0;
    display: block;
    flex: 0 0 auto;
    border-radius: 0.8rem; } }

@media (min-width: 901px) {
  .pageHome .site-content__header {
    max-width: none; } }

.site-content__body {
  margin: 0 auto; }

.site-content__user {
  transition: transform 300ms ease;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  width: 90%;
  transform: translate3d(-88%, 0, 0); }
  @media (min-width: 901px) {
    .site-content__user {
      transition: none;
      transform: none;
      position: static;
      width: 30rem;
      flex: 0 0 auto;
      max-height: calc(80vh - 12rem);
      border-radius: 0.8rem;
      min-height: 60rem; } }

.site-content__main {
  transition: transform 300ms ease;
  position: absolute;
  padding: 1rem;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  z-index: 1; }
  @media (min-width: 901px) {
    .site-content__main {
      transition: none;
      width: auto;
      transform: none;
      position: static;
      flex: 1 1 auto;
      margin: 0 0 0 4rem;
      max-width: calc(100% - 34rem);
      border-radius: 0.8rem;
      min-height: 60rem; } }
  @media (min-width: 1201px) {
    .site-content__main {
      width: auto;
      transform: none;
      position: static;
      flex: 1 1 auto;
      margin: 0 4rem;
      max-width: calc(100% - 58rem); } }

.site-content__ad {
  background: #fff;
  display: none; }
  @media (min-width: 1201px) {
    .site-content__ad {
      display: block;
      width: 20rem;
      height: 60rem;
      flex: 0 0 auto;
      border-radius: 0.8rem; } }

@media (max-width: 900px) {
  .is-user-screen-active .site-content__user {
    transform: translate3d(0, 0, 0); }
  .is-user-screen-active .site-content__main {
    transform: translate3d(88%, 0, 0); } }

.calendar {
  background: rgba(255, 255, 255, 0.95);
  border-radius: 0.8rem;
  padding-bottom: 0.5rem;
  position: relative;
  overflow: hidden; }

.calendar__container {
  display: flex;
  transition: all 300ms ease;
  transform: translate3d(0, 0, 0); }

.calendar__month {
  width: calc((100% / 12) * 12);
  flex: 1 0 auto;
  align-items: flex-start; }
  @media (min-width: 601px) {
    .calendar__month {
      width: calc((100% / 12) * 6); } }
  @media (min-width: 1301px) {
    .calendar__month {
      width: calc((100% / 12) * 4); } }
  @media (min-width: 1601px) {
    .calendar__month {
      width: calc((100% / 12) * 3); } }
  @media (min-width: 2001px) {
    .calendar__month {
      width: calc((100% / 12) * 2); } }

.calendar__month-label {
  font-weight: normal;
  font-size: 1.4rem;
  color: #344b6d;
  height: 4.4rem;
  display: flex;
  justify-content: center;
  align-items: center; }

.calendar__day-list {
  margin: 0;
  padding: 0; }

.calendar__day {
  font-family: sans-serif;
  font-size: 1.3rem;
  list-style: none;
  display: flex;
  height: 3.2rem;
  align-items: center;
  padding: 0 0.5rem;
  position: relative; }
  @media screen and (min-width: 1200px) {
    .calendar__day {
      height: 2rem;
      font-size: 0.9rem; } }
  @media screen and (min-height: 1100px) and (min-width: 1200px) {
    .calendar__day {
      height: 2.4rem;
      font-size: 1.2rem; } }
  @media screen and (min-height: 1260px) and (min-width: 1200px) {
    .calendar__day {
      height: 2.9rem;
      font-size: 1.2rem; } }
  .calendar__day.is-weekend {
    background: rgba(255, 255, 255, 0.6); }
  .calendar__day.is-sunday, .calendar__day.is-non-work-day {
    border-bottom: 1px solid #bbb;
    background: rgba(52, 75, 109, 0.1); }
    .calendar__day.is-sunday .dow,
    .calendar__day.is-sunday .date, .calendar__day.is-non-work-day .dow,
    .calendar__day.is-non-work-day .date {
      color: #de5b4e; }
  .calendar__day.is-strong {
    font-weight: 900; }
  .calendar__day.is-non-work-day {
    background: rgba(52, 75, 109, 0.3);
    color: #464646; }
    .calendar__day.is-non-work-day:hover {
      background: rgba(52, 75, 109, 0.4); }
  .calendar__day.is-today {
    background: #debc4e; }
  .calendar__day.is-selected, .calendar__day.is-selected:hover {
    background: #344b6d;
    color: #ffffff; }
    .calendar__day.is-selected img,
    .calendar__day.is-selected svg, .calendar__day.is-selected:hover img,
    .calendar__day.is-selected:hover svg {
      filter: brightness(0) invert(1);
      fill: white; }
  .calendar__day:last-child {
    border-bottom: none !important; }
  .calendar__day .date {
    width: 1.5rem;
    margin-right: 0.5rem; }
  .calendar__day .dow {
    width: 1.5rem;
    margin-right: 0.5rem; }
  .calendar__day .week-no {
    font-family: sans-serif;
    position: absolute;
    right: 3rem;
    font-size: 2.9rem;
    top: 0.4rem;
    color: #a2a2a2;
    z-index: 1;
    font-weight: normal; }

.calendar__day:hover,
.calendar__day--empty:hover {
  background: #e9edf4; }

.calendar__controls > * {
  background: #344b6d;
  display: flex;
  align-items: center;
  justify-content: center; }
  .calendar__controls > * svg {
    fill: #debc4e;
    height: 1.8rem; }

.calendar__controls .dec {
  position: absolute;
  top: 0;
  left: 0;
  width: 4rem;
  height: 4rem;
  opacity: 1;
  cursor: pointer; }

.calendar__controls .inc {
  position: absolute;
  top: 0;
  right: 0;
  width: 4rem;
  height: 4rem;
  cursor: pointer;
  opacity: 1; }

.calendar__icons {
  display: flex; }
  .calendar__icons li {
    display: inline-block; }
  .calendar__icons img {
    max-width: 1rem; }

.calendar__day {
  position: relative; }
  .calendar__day li {
    display: block; }

.calendar__icons-user {
  display: flex;
  align-items: center;
  position: absolute;
  right: 11.5rem; }
  .calendar__icons-user li {
    margin: 0 0.2rem;
    display: none; }
    .calendar__icons-user li.is-active {
      display: block; }
  .calendar__icons-user svg {
    width: 1rem;
    height: 1rem; }

.calendar__moon {
  display: block;
  position: absolute;
  right: 1.5rem;
  top: 0.4rem; }
  .calendar__moon img {
    width: 1rem;
    height: 1rem; }
  .calendar__moon i {
    font-size: 30px;
    position: relative;
    top: -9px;
    right: -8px; }
    @media screen and (min-width: 1200px) and (min-height: 900px) {
      .calendar__moon i {
        top: -11px;
        font-size: 24px; } }
    @media screen and (min-height: 1100px) and (min-width: 1200px) {
      .calendar__moon i {
        top: -9px; } }
    @media screen and (min-height: 1260px) and (min-width: 1200px) {
      .calendar__moon i {
        top: -6px; } }

.calendar__days-since {
  font-family: sans-serif;
  font-size: 0.9rem;
  position: absolute;
  right: 7rem;
  display: block;
  top: 0.4rem; }
  @media screen and (min-height: 1100px) and (min-width: 1200px) {
    .calendar__days-since {
      top: 0.6rem; } }
  @media screen and (min-height: 1260px) and (min-width: 1200px) {
    .calendar__days-since {
      top: 0.8rem; } }
.calendar__days-remaining {
  font-family: sans-serif;
  font-size: 0.9rem;
  position: absolute;
  right: 9rem;
  display: block;
  top: 0.4rem; }
  @media screen and (min-height: 1100px) and (min-width: 1200px) {
    .calendar__days-remaining {
      top: 0.6rem; } }
  @media screen and (min-height: 1260px) and (min-width: 1200px) {
    .calendar__days-remaining {
      top: 0.8rem; } }

.calendar__icons {
  position: absolute;
  right: 10.5rem;
  top: 0.5rem; }
  .calendar__icons li {
    margin-left: 0.25rem; }

.calendar__schools {
  display: flex;
  position: absolute;
  top: 0;
  bottom: 0;
  align-content: stretch;
  right: 0;
  margin-right: 5px; }
  .calendar__schools li {
    width: 0.3rem;
    opacity: 0; }
    .calendar__schools li.is-active {
      opacity: 1; }

.calendar__text > li,
.calendar__icons > li {
  display: none; }
.calendar__text > li.is-active,
.calendar__icons > li.is-active {
  display: block; }
.calendar__text > li.is-active ~ .is-active,
.calendar__icons > li.is-active ~ .is-active {
  display: none; }

.calendar__text > li.is-strong {
  font-weight: 900; }
.calendar__text > li.is-non-work-day {
  font-weight: 900; }

.calendar__meta > li {
  display: none; }
.calendar__meta > li.is-active {
  display: block; }

.modal {
  background: #fff;
  z-index: 99999999999999999999999999;
  position: absolute;
  left: 1rem;
  top: 1rem;
  bottom: 1rem;
  right: 1rem;
  box-shadow: 2px 3px 49px -12px rgba(0, 0, 0, 0.62);
  max-width: 76rem; }
  @media (min-width: 901px) {
    .modal {
      top: 50%;
      transform: translate3d(-50%, -50%, 0);
      width: 100%;
      bottom: auto;
      left: 50%;
      right: auto; } }
  .modal__close {
    cursor: pointer;
    z-index: 1;
    position: absolute;
    right: 2rem;
    top: 2rem;
    font-size: 4rem;
    color: #6f6f6f; }

.modal__body {
  position: relative; }

.modal__header {
  padding: 4rem;
  min-height: 2rem;
  background: #f1ebed;
  text-align: center;
  color: #505050;
  text-transform: uppercase;
  position: relative; }
  .modal__header h2 {
    font-size: 2rem;
    font-weight: 900;
    color: #344b6d; }
  .modal__header:after {
    content: '';
    display: block;
    height: 2px;
    width: 15rem;
    background: #debc4e;
    position: absolute;
    left: calc(50% - 7.5rem);
    bottom: 3.5rem; }

.modal__content {
  max-width: 50rem;
  margin: 0 auto;
  padding: 4rem 2rem; }

.modal-enter-active, .modal-leave-active {
  transition: all .3s; }
  @media (min-width: 901px) {
    .modal-enter-active, .modal-leave-active {
      transform: translate3d(-50%, -50%, 0); } }

.modal-enter, .modal-leave-to {
  opacity: 0; }
  @media (min-width: 901px) {
    .modal-enter, .modal-leave-to {
      transform: translate3d(-50%, -40%, 0); } }

[data-simplebar] {
  position: relative;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-content: flex-start;
  align-items: flex-start;
  width: inherit;
  height: inherit;
  max-width: inherit;
  max-height: inherit; }

.simplebar-wrapper {
  overflow: hidden;
  width: inherit;
  height: inherit;
  max-width: inherit;
  max-height: inherit; }

.simplebar-mask {
  direction: inherit;
  position: absolute;
  overflow: hidden;
  padding: 0;
  margin: 0;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  width: auto !important;
  height: auto !important;
  z-index: 0; }

.simplebar-offset {
  direction: inherit !important;
  box-sizing: inherit !important;
  resize: none !important;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  padding: 0;
  margin: 0;
  -webkit-overflow-scrolling: touch; }

.simplebar-content {
  direction: inherit;
  box-sizing: border-box !important;
  position: relative;
  display: block;
  height: 100%;
  width: auto;
  visibility: visible;
  overflow: scroll;
  max-width: 100%;
  max-height: 100%; }

.simplebar-placeholder {
  max-height: 100%;
  max-width: 100%;
  width: 100%;
  pointer-events: none; }

.simplebar-height-auto-observer-wrapper {
  box-sizing: inherit !important;
  height: 100%;
  width: inherit;
  max-width: 1px;
  position: relative;
  float: left;
  max-height: 1px;
  overflow: hidden;
  z-index: -1;
  padding: 0;
  margin: 0;
  pointer-events: none;
  flex-grow: inherit;
  flex-shrink: 0;
  flex-basis: 0; }

.simplebar-height-auto-observer {
  box-sizing: inherit;
  display: block;
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  height: 1000%;
  width: 1000%;
  min-height: 1px;
  min-width: 1px;
  overflow: hidden;
  pointer-events: none;
  z-index: -1; }

.simplebar-track {
  z-index: 1;
  position: absolute;
  right: 0;
  bottom: 0;
  pointer-events: none; }

.simplebar-scrollbar {
  position: absolute;
  right: 2px;
  width: 7px;
  min-height: 10px; }

.simplebar-scrollbar:before {
  position: absolute;
  content: "";
  background: #000;
  border-radius: 7px;
  left: 0;
  right: 0;
  opacity: 0;
  transition: opacity .2s linear; }

.simplebar-track .simplebar-scrollbar.simplebar-visible:before {
  opacity: .5;
  transition: opacity 0s linear; }

.simplebar-track.simplebar-vertical {
  top: 0;
  width: 11px; }

.simplebar-track.simplebar-vertical .simplebar-scrollbar:before {
  top: 2px;
  bottom: 2px; }

.simplebar-track.simplebar-horizontal {
  left: 0;
  height: 11px; }

.simplebar-track.simplebar-horizontal .simplebar-scrollbar:before {
  height: 100%;
  left: 2px;
  right: 2px; }

.simplebar-track.simplebar-horizontal .simplebar-scrollbar {
  right: auto;
  left: 0;
  top: 2px;
  height: 7px;
  min-height: 0;
  min-width: 10px;
  width: auto; }

[data-simplebar-direction=rtl] .simplebar-track.simplebar-vertical {
  right: auto;
  left: 0; }

.hs-dummy-scrollbar-size {
  direction: rtl;
  position: fixed;
  opacity: 0;
  visibility: hidden;
  height: 500px;
  width: 500px;
  overflow-y: hidden;
  overflow-x: scroll; }

.sidebar {
  height: 100%;
  position: relative; }

#sidebar.is-modal-active {
  transition: all 300ms;
  opacity: 0;
  display: block;
  position: fixed;
  top: -5rem;
  left: 0rem;
  bottom: 0rem;
  right: 3rem;
  z-index: 999999;
  width: auto;
  background: #fff;
  margin-right: 0;
  transform: translate3d(-100%, 0px, 0);
  height: calc(100vh - 10px); }
  #sidebar.is-modal-active .site-filter-toggle {
    display: none; }
  #sidebar.is-modal-active .sidebar__close {
    position: absolute;
    right: 2rem;
    top: 11rem;
    z-index: 1; }
#sidebar.is-loaded {
  opacity: 1;
  transform: translate3d(0, 0, 0); }

#vue-calendarHeader .site-filter-toggle {
  height: 3.2rem; }
  @media (min-width: 1201px) {
    #vue-calendarHeader .site-filter-toggle {
      display: none; } }

.sidebar__footer {
  height: 6rem;
  position: absolute;
  bottom: 0;
  width: 100%;
  background: #fff;
  border-radius: 0 0 0.8rem 0.8rem; }
  .sidebar__footer.is-active {
    background: #f7f8fb; }
    .sidebar__footer.is-active > ul {
      display: flex; }
  .sidebar__footer > ul {
    display: none;
    width: 100%;
    align-items: center;
    height: 100%; }
    .sidebar__footer > ul li {
      cursor: pointer;
      width: 33.33%;
      display: block;
      text-align: center;
      height: 100%;
      display: flex;
      align-items: center;
      flex-wrap: wrap;
      justify-content: center;
      border-right: 1px solid #e9edf4;
      font-size: .8rem;
      text-transform: uppercase;
      font-weight: 600; }
      .sidebar__footer > ul li:hover {
        background: #344b6d;
        color: #fff;
        border-right: 1px solid #344b6d; }
        .sidebar__footer > ul li:hover svg {
          fill: #f7f8fb; }
      .sidebar__footer > ul li:last-child {
        border: none; }
    .sidebar__footer > ul svg {
      width: 2.4rem;
      display: block;
      height: 2.4rem;
      margin: 0 auto;
      width: 100%;
      fill: #88a1c6; }

.sidebar-user {
  height: 100%;
  padding-top: 2rem;
  overflow-y: auto;
  background: #fff; }
  .sidebar-user__signup {
    text-align: center;
    color: #344b6d;
    padding: 4rem 0;
    max-width: 16rem;
    margin: 0 auto; }
    .sidebar-user__signup h2 {
      font-size: 1.6rem;
      font-weight: bold; }
    .sidebar-user__signup p {
      font-size: 1.4rem;
      margin: 1rem 0 2rem; }
    .sidebar-user__signup button {
      background: #344b6d;
      font-weight: bold;
      color: #e9edf4;
      border: none;
      padding: 1em 2em;
      display: block;
      width: 100%;
      cursor: pointer; }
      .sidebar-user__signup button:hover {
        background: #415e89; }
  .sidebar-user__none {
    padding: 2rem;
    font-size: 1.6rem;
    text-align: center; }

.sidebar-user-enter-active,
.sidebar-user-leave-active {
  transition: opacity .3s ease;
  opacity: 1; }

.sidebar-user-enter,
.sidebar-user-leave-to {
  opacity: 0; }

.sidebar__body {
  position: absolute;
  top: 19.6rem;
  bottom: 6rem;
  left: 0;
  right: 0;
  overflow: scroll; }

.sidebar__header {
  background: #f7f8fb;
  color: #344b6d;
  font-weight: 800;
  text-align: center;
  padding: 1rem;
  height: 13rem;
  border-radius: 0.8rem 0.8rem 0 0;
  display: flex;
  flex-wrap: wrap;
  padding: 1.6rem 0; }
  .sidebar__header-day {
    width: 100%;
    font-size: 2rem;
    margin-bottom: -1.2rem; }
  .sidebar__header-date {
    width: 100%;
    font-size: 5rem;
    margin-bottom: -0.9rem; }
  .sidebar__header-mmyy {
    width: 100%;
    font-size: 1.2rem;
    font-weight: 700;
    margin-bottom: 1rem; }

.sidebar__info {
  background: #debc4e;
  height: 6.6rem;
  position: relative; }

.sidebar__info-slides {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0; }
  .sidebar__info-slides > li {
    list-style: none;
    position: absolute;
    opacity: 0;
    transition: opacity 600ms;
    left: 0;
    right: 0; }
    .sidebar__info-slides > li.is-active {
      opacity: 1; }
    .sidebar__info-slides > li.notransition {
      transition: none !important; }

.sidebar__info-dec,
.sidebar__info-inc {
  position: absolute;
  transform: translate3d(0, -50%, 0);
  top: 50%;
  fill: #fff;
  cursor: pointer; }
  .sidebar__info-dec svg,
  .sidebar__info-inc svg {
    transition: all 300ms ease; }

.sidebar__info-dec {
  left: 1rem; }
  .sidebar__info-dec:hover svg {
    position: relative;
    left: -.2rem; }

.sidebar__info-inc {
  right: 1rem; }
  .sidebar__info-inc:hover svg {
    position: relative;
    right: -.2rem; }

.sidebar__info-slides {
  color: #344b6d; }

.sidebar-info-enter-active, .sidebar-info-leave-active {
  transition: opacity .3s; }

.sidebar-info-enter, .sidebar-info-leave-to {
  opacity: 0; }

.sidebar-info__saint {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 6.6rem;
  font-weight: 600;
  font-size: 1.6rem; }

.sidebar-info__moon {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 6.6rem;
  font-weight: 600; }
  .sidebar-info__moon .icon {
    display: none;
    align-items: center;
    font-size: 1.2rem; }
    .sidebar-info__moon .icon span {
      display: block;
      font-size: 1rem;
      text-transform: uppercase; }
    .sidebar-info__moon .icon.is-active {
      display: flex; }
  .sidebar-info__moon svg {
    width: 4rem;
    height: 4rem;
    margin-right: 1rem; }

.sidebar-info__times {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 6.6rem;
  font-weight: 600;
  font-size: 1.3rem; }
  .sidebar-info__times .change {
    font-size: 1.2rem;
    color: #fff;
    margin: 0 2rem;
    text-align: center; }
  .sidebar-info__times svg {
    display: block; }

.sidebar-user__tasks,
.sidebar-user__bday,
.sidebar-user__fete {
  padding: 0; }
  .sidebar-user__tasks li,
  .sidebar-user__bday li,
  .sidebar-user__fete li {
    position: relative;
    display: block;
    border-bottom: 1px solid #e9edf4;
    padding: 1rem 2rem 1rem 5rem;
    cursor: pointer; }
    .sidebar-user__tasks li:hover,
    .sidebar-user__bday li:hover,
    .sidebar-user__fete li:hover {
      background: #f7f8fb; }
    .sidebar-user__tasks li svg,
    .sidebar-user__bday li svg,
    .sidebar-user__fete li svg {
      position: absolute;
      left: 2rem;
      top: 1rem;
      fill: #88a1c6; }

.sidebar-user__meta {
  font-weight: bold;
  font-size: 1.1rem;
  color: #debc4e; }

.sidebar-user__desc {
  font-size: 1.2rem;
  color: #344b6d; }

@media (min-width: 1201px) {
  .sidebar__close {
    display: none; } }

.sidebar__container {
  position: absolute;
  top: 5.3rem;
  left: 0;
  right: 0;
  bottom: 0;
  background: #fff;
  border-radius: .8rem;
  box-shadow: 10px 0px 5px -7px rgba(0, 0, 0, 0.17); }

.sidebar-user__loader {
  display: block; }
  .sidebar-user__loader.is-active {
    display: block; }

.sidebar-user--smarty {
  opacity: 0.5; }

.sidebar-user--smarty-loader.loader-double-bounce {
  margin: 0;
  position: absolute;
  top: 11px;
  right: 2rem;
  width: 14px;
  height: 14px; }

.sidebar-user.is-user {
  height: 30rem;
  overflow-x: hidden; }
  .sidebar-user.is-user .sidebar-user__loader {
    display: block; }

.sidebar-user__loader {
  display: none; }

.sidebar__overlay {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: -3rem;
  z-index: -1; }

.sidebar-user__dynamic-slide li {
  transform: translateY(-27%);
  transition: opacity 900ms;
  padding: 0;
  position: absolute;
  top: 270px;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 0;
  display: flex;
  align-items: center;
  justify-content: center; }
  @media (min-width: 1201px) {
    .sidebar-user__dynamic-slide li {
      top: 50%; } }
  .sidebar-user__dynamic-slide li.is-active {
    opacity: 1; }

.sidebar-user__dynamic-slide-arrows li {
  position: absolute;
  display: block;
  padding: 0;
  cursor: pointer;
  top: 350px; }
  @media (min-width: 1201px) {
    .sidebar-user__dynamic-slide-arrows li {
      top: 57%; } }
.sidebar-user__dynamic-slide-arrows svg {
  height: 1rem; }
.sidebar-user__dynamic-slide-arrows li:first-child {
  left: 2rem; }
.sidebar-user__dynamic-slide-arrows li:last-child {
  right: 2rem; }

.is-scroll-locked {
  height: 100% !important;
  overflow: hidden !important; }

.year-selection {
  background: #fff;
  background: #344b6d;
  border-radius: 5rem;
  color: #fff;
  font-size: 1.1rem;
  height: 3.2rem;
  margin: 1rem 0;
  padding: 0; }

.year-selection__container {
  overflow: hidden; }

.year-selection__list {
  display: flex;
  transition: all 300ms ease;
  position: relative;
  left: -50%;
  transform: translate3d(-148%, 0, 0); }
  @media (min-width: 731px) {
    .year-selection__list {
      transform: translate3d(-50%, 0, 0); } }
  @media (min-width: 1201px) {
    .year-selection__list {
      transform: translate3d(-7%, 0, 0); } }
  @media (min-width: 2001px) {
    .year-selection__list {
      transform: translate3d(16.5%, 0, 0); } }
  @media (min-width: 2601px) {
    .year-selection__list {
      transform: translate3d(32%, 0, 0); } }
  @media (min-width: 2901px) {
    .year-selection__list {
      transform: translate3d(42%, 0, 0); } }
  @media (min-width: 3101px) {
    .year-selection__list {
      transform: translate3d(50%, 0, 0); } }
  .year-selection__list > li {
    display: block;
    flex-shrink: 0;
    flex: 1 0 auto;
    width: 33%;
    text-align: center;
    text-decoration: none; }
    @media (min-width: 731px) {
      .year-selection__list > li {
        width: 20%; } }
    @media (min-width: 1201px) {
      .year-selection__list > li {
        width: calc(100% / 7); } }
    @media (min-width: 2001px) {
      .year-selection__list > li {
        width: calc(100% / 9); } }
    @media (min-width: 2601px) {
      .year-selection__list > li {
        width: calc(100% / 11); } }
    @media (min-width: 2901px) {
      .year-selection__list > li {
        width: calc(100% / 13); } }
    @media (min-width: 3101px) {
      .year-selection__list > li {
        width: calc(100% / 15); } }
  .year-selection__list a {
    color: inherit;
    text-decoration: inherit;
    font-size: 1.4rem;
    display: block;
    line-height: 3.2rem;
    position: relative;
    transition: font-size 0.3s ease-in-out; }
    .year-selection__list a:hover {
      font-size: 1.55rem;
      top: -2px; }
  .year-selection__list .is-active {
    color: #debc4e;
    font-weight: 600; }
    .year-selection__list .is-active > span {
      line-height: 3rem;
      display: block;
      font-size: 1.55rem;
      top: -2px; }

.year-selection__label {
  display: none; }
  @media (min-width: 501px) {
    .year-selection__label {
      display: inline-block; } }

/**
 * Swiper 4.4.6
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * http://www.idangero.us/swiper/
 *
 * Copyright 2014-2018 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: December 19, 2018
 */
.swiper-container {
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1; }

.swiper-container-no-flexbox .swiper-slide {
  float: left; }

.swiper-container-vertical > .swiper-wrapper {
  flex-direction: column; }

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  box-sizing: content-box; }

.swiper-container-android .swiper-slide, .swiper-wrapper {
  transform: translate3d(0, 0, 0); }

.swiper-container-multirow > .swiper-wrapper {
  flex-wrap: wrap; }

.swiper-container-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto; }

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform; }

.swiper-slide-invisible-blank {
  visibility: hidden; }

.swiper-container-autoheight, .swiper-container-autoheight .swiper-slide {
  height: auto; }

.swiper-container-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform,height; }

.swiper-container-3d {
  perspective: 1200px; }

.swiper-container-3d .swiper-cube-shadow, .swiper-container-3d .swiper-slide, .swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top, .swiper-container-3d .swiper-wrapper {
  transform-style: preserve-3d; }

.swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10; }

.swiper-container-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

.swiper-container-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

.swiper-container-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

.swiper-container-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

.swiper-container-wp8-horizontal, .swiper-container-wp8-horizontal > .swiper-wrapper {
  touch-action: pan-y; }

.swiper-container-wp8-vertical, .swiper-container-wp8-vertical > .swiper-wrapper {
  touch-action: pan-x; }

.swiper-button-next, .swiper-button-prev {
  position: absolute;
  top: 50%;
  width: 27px;
  height: 44px;
  margin-top: -22px;
  z-index: 10;
  cursor: pointer;
  background-size: 27px 44px;
  background-position: center;
  background-repeat: no-repeat; }

.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
  opacity: .35;
  cursor: auto;
  pointer-events: none; }

.swiper-button-prev, .swiper-container-rtl .swiper-button-next {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  left: 10px;
  right: auto; }

.swiper-button-next, .swiper-container-rtl .swiper-button-prev {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  right: 10px;
  left: auto; }

.swiper-button-prev.swiper-button-white, .swiper-container-rtl .swiper-button-next.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-next.swiper-button-white, .swiper-container-rtl .swiper-button-prev.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-prev.swiper-button-black, .swiper-container-rtl .swiper-button-next.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-next.swiper-button-black, .swiper-container-rtl .swiper-button-prev.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-lock {
  display: none; }

.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: .3s opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10; }

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0; }

.swiper-container-horizontal > .swiper-pagination-bullets, .swiper-pagination-custom, .swiper-pagination-fraction {
  bottom: 10px;
  left: 0;
  width: 100%; }

.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0; }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(0.33);
  position: relative; }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  transform: scale(1); }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1); }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(0.66); }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.33); }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(0.66); }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(0.33); }

.swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  display: inline-block;
  border-radius: 100%;
  background: #000;
  opacity: .2; }

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -webkit-appearance: none;
  appearance: none; }

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer; }

.swiper-pagination-bullet-active {
  opacity: 1;
  background: #007aff; }

.swiper-container-vertical > .swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  transform: translate3d(0, -50%, 0); }

.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 6px 0;
  display: block; }

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px; }

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: .2s top,.2s -webkit-transform;
  transition: .2s transform,.2s top;
  transition: .2s transform,.2s top,.2s -webkit-transform; }

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 4px; }

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap; }

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: .2s left,.2s -webkit-transform;
  transition: .2s transform,.2s left;
  transition: .2s transform,.2s left,.2s -webkit-transform; }

.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: .2s right,.2s -webkit-transform;
  transition: .2s transform,.2s right;
  transition: .2s transform,.2s right,.2s -webkit-transform; }

.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, 0.25);
  position: absolute; }

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: #007aff;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top; }

.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top; }

.swiper-container-horizontal > .swiper-pagination-progressbar, .swiper-container-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0; }

.swiper-container-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-container-vertical > .swiper-pagination-progressbar {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0; }

.swiper-pagination-white .swiper-pagination-bullet-active {
  background: #fff; }

.swiper-pagination-progressbar.swiper-pagination-white {
  background: rgba(255, 255, 255, 0.25); }

.swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill {
  background: #fff; }

.swiper-pagination-black .swiper-pagination-bullet-active {
  background: #000; }

.swiper-pagination-progressbar.swiper-pagination-black {
  background: rgba(0, 0, 0, 0.25); }

.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill {
  background: #000; }

.swiper-pagination-lock {
  display: none; }

.swiper-scrollbar {
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1); }

.swiper-container-horizontal > .swiper-scrollbar {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%; }

.swiper-container-vertical > .swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%; }

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  left: 0;
  top: 0; }

.swiper-scrollbar-cursor-drag {
  cursor: move; }

.swiper-scrollbar-lock {
  display: none; }

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center; }

.swiper-zoom-container > canvas, .swiper-zoom-container > img, .swiper-zoom-container > svg {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain; }

.swiper-slide-zoomed {
  cursor: move; }

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  animation: swiper-preloader-spin 1s steps(12, end) infinite; }

.swiper-lazy-preloader:after {
  display: block;
  content: '';
  width: 100%;
  height: 100%;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%236c6c6c'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  background-position: 50%;
  background-size: 100%;
  background-repeat: no-repeat; }

.swiper-lazy-preloader-white:after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%23fff'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }
@keyframes swiper-preloader-spin {
  100% {
    transform: rotate(360deg); } }
.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000; }

.swiper-container-fade.swiper-container-free-mode .swiper-slide {
  transition-timing-function: ease-out; }

.swiper-container-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity; }

.swiper-container-fade .swiper-slide .swiper-slide {
  pointer-events: none; }

.swiper-container-fade .swiper-slide-active, .swiper-container-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto; }

.swiper-container-cube {
  overflow: visible; }

.swiper-container-cube .swiper-slide {
  pointer-events: none;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  transform-origin: 0 0;
  width: 100%;
  height: 100%; }

.swiper-container-cube .swiper-slide .swiper-slide {
  pointer-events: none; }

.swiper-container-cube.swiper-container-rtl .swiper-slide {
  transform-origin: 100% 0; }

.swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto; }

.swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-next, .swiper-container-cube .swiper-slide-next + .swiper-slide, .swiper-container-cube .swiper-slide-prev {
  pointer-events: auto;
  visibility: visible; }

.swiper-container-cube .swiper-slide-shadow-bottom, .swiper-container-cube .swiper-slide-shadow-left, .swiper-container-cube .swiper-slide-shadow-right, .swiper-container-cube .swiper-slide-shadow-top {
  z-index: 0;
  backface-visibility: hidden; }

.swiper-container-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: .6;
  filter: blur(50px);
  z-index: 0; }

.swiper-container-flip {
  overflow: visible; }

.swiper-container-flip .swiper-slide {
  pointer-events: none;
  backface-visibility: hidden;
  z-index: 1; }

.swiper-container-flip .swiper-slide .swiper-slide {
  pointer-events: none; }

.swiper-container-flip .swiper-slide-active, .swiper-container-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto; }

.swiper-container-flip .swiper-slide-shadow-bottom, .swiper-container-flip .swiper-slide-shadow-left, .swiper-container-flip .swiper-slide-shadow-right, .swiper-container-flip .swiper-slide-shadow-top {
  z-index: 0;
  backface-visibility: hidden; }

.swiper-container-coverflow .swiper-wrapper {
  -ms-perspective: 1200px; }

.loader--chasing-dots {
  margin: 40px auto;
  width: 40px;
  height: 40px;
  position: relative;
  text-align: center;
  animation: loader-chasingDotsRotate 2s infinite linear; }

.loader--chasing-dots .loader--child {
  width: 60%;
  height: 60%;
  display: inline-block;
  position: absolute;
  top: 0;
  background-color: #333;
  border-radius: 100%;
  animation: loader-chasingDotsBounce 2s infinite ease-in-out; }
  .loader--chasing-dots .loader--child .loader--dot1 {
    background: #debc4e; }
  .loader--chasing-dots .loader--child .loader--dot2 {
    background: #344b6d; }

.loader--chasing-dots .loader--dot2 {
  top: auto;
  bottom: 0;
  animation-delay: -1s; }
@keyframes loader-chasingDotsRotate {
  100% {
    transform: rotate(360deg); } }
@keyframes loader-chasingDotsBounce {
  0%,
  100% {
    transform: scale(0); }
  50% {
    transform: scale(1); } }
.loader-double-bounce {
  width: 40px;
  height: 40px;
  position: relative;
  margin: 40px auto; }

.loader-double-bounce .loader-child {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: #344b6d;
  opacity: 0.6;
  position: absolute;
  top: 0;
  left: 0;
  animation: loader-doubleBounce 2s infinite ease-in-out; }

.loader-double-bounce .loader-double-bounce2 {
  animation-delay: -1.0s; }
@keyframes loader-doubleBounce {
  0%, 100% {
    transform: scale(0); }
  50% {
    transform: scale(1); } }
.loader-overlay {
  position: absolute;
  z-index: 9999999999999999999999999;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #fff;
  opacity: 1;
  transition: opacity 800ms ease-out 300ms; }
  .loader-overlay.is-hidden {
    display: none; }

.calendar-is-ready .loader-overlay {
  opacity: 0; }

.offcanvas-nav {
  background: #344b6d;
  bottom: 0;
  color: #f0f3f8;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  transform: translate3d(-100%, 0, 0);
  transition: transform 300ms ease;
  width: 80%;
  z-index: 9999; }
  .offcanvas-nav.is-active {
    transform: translate3d(0%, 0, 0); }
  .offcanvas-nav li {
    display: flex;
    margin-bottom: 1rem;
    position: relative; }
    .offcanvas-nav li a {
      color: #f7f8fb;
      font-weight: 900;
      padding: 2rem 2rem;
      text-decoration: none;
      width: 100%; }
  .offcanvas-nav .day {
    width: 2.4rem;
    text-align: center;
    left: 23px;
    position: absolute;
    top: 30px; }
  .offcanvas-nav svg {
    fill: #e9edf4;
    height: 3rem;
    margin-right: 2rem;
    vertical-align: middle;
    width: 3rem; }
  .offcanvas-nav .icon-weather {
    transform: scale(1.4);
    position: relative;
    left: -4px; }
  .offcanvas-nav .icon-lune-7 {
    transform: scale(2.6); }

.offcanvas-nav__items {
  height: calc(100% - 8rem);
  overflow-y: auto; }

.offcanvas-nav li {
  flex-wrap: wrap; }

.offcanvas-nav__close {
  margin-bottom: 3rem;
  padding-top: 2rem;
  text-align: right;
  height: 4rem; }
  .offcanvas-nav__close svg {
    fill: #f7f8fb;
    height: 2rem;
    width: 2rem; }

.offcanvas-container {
  overflow-x: hidden; }

.offcanvas-wrapper {
  transform: translate3d(0%, 0, 0);
  transition: all 300ms ease;
  overflow-y: hidden; }
  .offcanvas-wrapper.is-active {
    opacity: 0.5;
    transform: translate3d(40%, 0, 0); }

.offcanvas-nav__overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(52, 75, 109, 0.4); }

.offcanvas-overlay-enter-active, .offcanvas-overlay-leave-active {
  transition: opacity .5s; }

.offcanvas-overlay-enter, .offcanvas-overlay-leave-to {
  opacity: 0; }

.menu-accordion-item {
  width: 100%;
  position: relative; }
  .menu-accordion-item ul {
    width: 100%;
    margin: 0;
    padding: 0;
    background: #486896;
    margin: 0 1rem;
    padding: 2rem;
    border-radius: 0.8rem;
    position: relative;
    top: -13px; }
    .menu-accordion-item ul a {
      padding: 1rem 0;
      display: block; }
  .menu-accordion-item li {
    display: block; }
  .menu-accordion-item a {
    flex: 1 1 auto;
    color: #88a1c6; }
    .menu-accordion-item a:hover {
      color: #fff; }
  .menu-accordion-item__toggle {
    position: absolute;
    right: 0rem;
    top: 0;
    height: 4.6rem;
    cursor: pointer;
    background: #3b557b;
    display: flex;
    align-items: center;
    width: 4.6rem;
    justify-self: flex-end;
    margin-right: 1rem;
    justify-content: center;
    border-radius: 0.8rem; }
    .menu-accordion-item__toggle.is-active {
      background: #486896;
      border-radius: 0.8rem 0.8rem 0 0; }
      .menu-accordion-item__toggle.is-active + ul {
        border-radius: 0.8rem 0 0.8rem 0.8rem; }
    .menu-accordion-item__toggle svg {
      width: 1rem;
      height: 1rem;
      margin: 0; }
  @media (min-width: 901px) {
    .menu-accordion-item {
      display: block;
      margin-bottom: 2rem; }
      .menu-accordion-item a {
        text-decoration: none;
        color: #f7f8fb;
        display: block;
        transition: all 200ms ease; }
        .menu-accordion-item a:hover {
          transform: translate3d(5px, 0, 0); }
      .menu-accordion-item ul {
        padding: 1rem;
        margin: 0;
        position: relative;
        left: -1rem;
        top: .5rem;
        width: 18rem;
        margin: 0 1rem; } }
    @media (min-width: 901px) and (min-width: 1201px) {
      .menu-accordion-item ul {
        width: 25rem;
        margin: 0; } }
  @media (min-width: 901px) {
        .menu-accordion-item ul li {
          margin-bottom: 0; }
      .menu-accordion-item__toggle {
        height: 2rem;
        width: 2rem;
        border-radius: 50%;
        margin-right: 0; }
        .menu-accordion-item__toggle:hover {
          background: #486896; }
        .menu-accordion-item__toggle.is-active {
          height: 3rem; }
          .menu-accordion-item__toggle.is-active svg {
            position: relative;
            top: -3px; }
        .menu-accordion-item__toggle svg {
          fill: #f7f8fb; } }

.offcanvas__header-meta {
  font-size: 1.4rem;
  position: absolute;
  top: 26px;
  left: 23px;
  font-weight: normal;
  max-width: calc(100% - 7.5rem); }

.input-group {
  position: relative;
  margin: 1rem 0; }
  .input-group label {
    transition: all 300ms ease;
    position: absolute;
    top: 2rem;
    text-transform: uppercase;
    color: #6f6f6f;
    font-size: 1.4rem; }
  .input-group input {
    width: 100%;
    padding: 2rem 0 1rem;
    border: none;
    border-bottom: 2px solid #bcbcbc;
    color: #6f6f6f; }
    .input-group input:focus {
      outline: none;
      border-bottom: 2px solid #6f6f6f; }
  .input-group .small-button {
    width: auto;
    padding-left: 20px;
    padding-right: 20px; }
  .input-group .input-group__button,
  .input-group button,
  .input-group input[type="submit"] {
    width: 100%;
    background: #debc4e;
    color: #344b6d;
    border: none;
    font-weight: bold;
    text-transform: uppercase;
    padding: 1.5rem 0;
    margin-top: 1.2rem;
    text-decoration: none;
    display: inline-block;
    text-align: center;
    cursor: pointer; }
    .input-group .input-group__button:hover,
    .input-group button:hover,
    .input-group input[type="submit"]:hover {
      background: #e1c35f; }
    .input-group .input-group__button .is-disabled,
    .input-group button .is-disabled,
    .input-group input[type="submit"] .is-disabled {
      opacity: 0.4;
      pointer-events: none; }
      .input-group .input-group__button .is-disabled:hover,
      .input-group button .is-disabled:hover,
      .input-group input[type="submit"] .is-disabled:hover {
        background: #debc4e; }
    .input-group .input-group__button[disabled="disabled"],
    .input-group button[disabled="disabled"],
    .input-group input[type="submit"][disabled="disabled"] {
      opacity: 0.4;
      pointer-events: none; }
      .input-group .input-group__button[disabled="disabled"]:hover,
      .input-group button[disabled="disabled"]:hover,
      .input-group input[type="submit"][disabled="disabled"]:hover {
        background: #debc4e; }
    .input-group .input-group__button[disabled="disabled"],
    .input-group button[disabled="disabled"],
    .input-group input[type="submit"][disabled="disabled"] {
      opacity: 0.7;
      pointer-events: none; }
  .input-group.input-group--date-time {
    position: relative; }
    .input-group.input-group--date-time .date-time-select {
      position: absolute;
      right: 13rem;
      top: 19px;
      color: #aaa; }
    .input-group.input-group--date-time select {
      display: inline-block;
      border: none;
      color: #aaa;
      width: 8rem; }
      .input-group.input-group--date-time select:focus {
        outline: none; }
  .input-group textarea {
    margin-top: 2rem;
    width: 100%;
    height: 10rem;
    border: none;
    border-bottom: 2px solid #bcbcbc; }
    .input-group textarea:focus {
      outline: none;
      border-bottom: 2px solid #6f6f6f; }
  .input-group.is-field-focused label, .input-group.is-field-dirty label {
    top: 0;
    font-size: 75%; }
  .input-group.is-field-focused.is-field-invalid input, .input-group.is-field-dirty.is-field-invalid input {
    border-bottom: 2px solid red; }

.input-group__desc {
  text-transform: uppercase;
  text-align: center;
  font-weight: bold;
  color: #debc4e;
  margin: 0 auto;
  font-size: 1.1rem; }

.input-group--checkbox {
  position: relative;
  padding-left: 1.1rem; }
  .input-group--checkbox input[type="checkbox"] {
    visibility: hidden;
    display: none;
    position: absolute; }
  .input-group--checkbox input:checked + label:after {
    content: "\2713 "; }
  .input-group--checkbox label {
    position: relative;
    padding-left: 2rem;
    display: block;
    text-transform: none;
    top: auto; }
    .input-group--checkbox label:before {
      content: '';
      width: 2rem;
      height: 2rem;
      background: #fff;
      display: block;
      border-radius: 2px;
      border: 1px solid #88a1c6;
      position: absolute;
      left: -1rem;
      top: 0rem; }
    .input-group--checkbox label:after {
      content: '';
      position: absolute;
      left: -.6rem;
      top: 0rem;
      color: #debc4e;
      font-weight: bold; }
  .input-group--checkbox .input-group__label-desc {
    margin-top: 1rem;
    padding-left: 2rem; }

.input-group__msg {
  color: #cc0b0b;
  font-size: 1.2rem;
  font-style: italic; }

.input-group__link {
  text-align: center;
  font-weight: bold; }
  .input-group__link a {
    color: #415e89;
    cursor: pointer; }
    .input-group__link a:hover {
      text-decoration: underline; }

.input-group--autocomplete {
  position: relative; }
  .input-group--autocomplete ul {
    position: absolute;
    top: 100%;
    width: 100%;
    background: #fff;
    z-index: 99999999999999999999999999;
    box-shadow: 6px 6px 55px -6px #bdbdbd; }
    .input-group--autocomplete ul li {
      padding: .5rem 2rem;
      display: block; }
      .input-group--autocomplete ul li:hover {
        background: rgba(1, 1, 1, 0.02); }

.input-group--select {
  margin: 3rem 0 1rem; }
  .input-group--select select {
    color: #88a1c6;
    width: 100%;
    border: none;
    border-bottom: 2px solid #bcbcbc;
    outline: none;
    padding-bottom: 1rem; }
    .input-group--select select:focus {
      outline: none; }
  .input-group--select option {
    color: #6f6f6f; }

.input-group--error {
  color: red;
  font-size: 1.2rem; }

.input-group--stay-connected {
  margin: 0 0 2.5rem; }

.input-group--delete {
  text-align: center;
  font-weight: bold;
  text-transform: uppercase;
  cursor: pointer;
  font-size: 1.4rem; }
  .input-group--delete:hover {
    text-decoration: underline; }

.input-group--datepicker input {
  position: relative; }
.input-group--datepicker .input-group__icon {
  position: absolute;
  right: 0.7rem;
  top: 1.8rem; }
  .input-group--datepicker .input-group__icon svg {
    width: 1.5rem;
    height: 1.5rem;
    fill: #88a1c6; }
.input-group--datepicker.input-group--date-time .input-group__icon {
  right: 31rem;
  top: 2rem; }
.input-group--datepicker .vdp-datepicker__calendar .cell.selected {
  background: #344b6d;
  color: #fff; }
.input-group--datepicker .vdp-datepicker__calendar .cell:not(.blank):not(.disabled).day:hover {
  border-color: #344b6d; }

.input-group--autocomplete {
  position: relative; }
  .input-group--autocomplete ul {
    position: absolute;
    top: 100%;
    width: 100%;
    background: #fff;
    z-index: 99999999999999999999999999;
    box-shadow: 6px 6px 55px -6px #bdbdbd; }
    .input-group--autocomplete ul li {
      padding: .5rem 2rem;
      display: block; }
      .input-group--autocomplete ul li:hover {
        background: rgba(1, 1, 1, 0.02); }

.input-group--select {
  margin: 3rem 0 1rem; }
  .input-group--select select {
    color: #88a1c6;
    width: 100%;
    border: none;
    border-bottom: 2px solid #bcbcbc;
    outline: none;
    padding-bottom: 1rem; }
    .input-group--select select:focus {
      outline: none; }
  .input-group--select option {
    color: #6f6f6f; }

.input-group--error {
  color: red;
  font-size: 1.2rem; }

.input-group__action {
  border: 1px solid #88a1c6;
  text-align: center;
  padding: 1em 2rem;
  display: inline-block;
  color: #344b6d;
  margin: 2rem 0 1rem;
  font-size: 1.2rem;
  cursor: pointer; }
  .input-group__action:hover {
    background: #f7f8fb; }
  .input-group__action svg {
    vertical-align: middle;
    fill: #3b557b;
    width: 1rem;
    height: 1rem;
    margin-right: 1rem; }

.input-group--anniversary {
  margin-top: 3rem;
  border-bottom: 2px solid #bcbcbc;
  padding: 0 0 1rem; }
  .input-group--anniversary select {
    border: none;
    margin-right: 2rem; }
    .input-group--anniversary select:last-of-type {
      margin-right: 0; }
    .input-group--anniversary select:focus {
      outline: none; }
  .input-group--anniversary .input-group__action {
    margin-left: 3rem; }

.input-group__age {
  margin-left: 1rem; }

.input-group--floating {
  position: relative; }
  .input-group--floating input {
    color: #88a1c6; }
  .input-group--floating label {
    color: #415e89;
    position: absolute;
    top: 0;
    font-size: 1.1rem;
    left: 0; }
  .input-group--floating .pristine + label {
    top: 2rem; }

.weather-next-container {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap; }
  @media (max-width: 600px) {
    .weather-next-container {
      justify-content: space-around; } }
.weather-current-container {
  display: flex;
  justify-content: center;
  margin-bottom: 20px;
  margin-top: 20px; }
  .weather-current-container .weather-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: #f3f3f3;
    margin: 15px;
    padding: 25px;
    min-width: 70%; }
  .weather-current-container .weather-header {
    margin-bottom: 2rem; }
  .weather-current-container .weather-summary {
    margin-left: -3rem; }
    @media (max-width: 600px) {
      .weather-current-container .weather-summary {
        margin-left: 0; } }
  .weather-current-container .weather-date {
    font-size: 2rem; }
  .weather-current-container .weather-content {
    display: flex;
    align-items: center; }
    @media (max-width: 600px) {
      .weather-current-container .weather-content {
        flex-direction: column; } }
  .weather-current-container .weather-description {
    margin-top: -1rem; }
  .weather-current-container .weather-attribs {
    line-height: 30px;
    margin-left: 40px; }
    @media (max-width: 600px) {
      .weather-current-container .weather-attribs {
        margin-left: 0; } }
.weather-icon {
  margin-left: auto;
  margin-right: auto;
  display: block; }
  .weather-next-container .weather-icon {
    height: 90px;
    width: 90px; }
  .weather-current-container .weather-icon {
    height: 120px;
    width: 120px;
    margin-top: -3rem; }
.weather-item {
  margin: 10px; }
.weather-item p {
  text-align: center; }
.weather-date {
  text-transform: uppercase; }
.weather-description {
  font-style: italic;
  font-size: 12px; }
.weather-attribs p {
  text-align: center;
  display: flex;
  justify-content: space-between;
  align-items: center; }
.weather-label {
  font-size: 12px;
  text-transform: uppercase;
  margin-right: 15px; }
  @media (max-width: 600px) {
    .weather-label {
      line-height: initial;
      text-align: initial; } }

.moon-current-container {
  display: flex;
  justify-content: center;
  margin: 2rem 0 0; }
  .moon-current-container .moon-item {
    display: flex;
    align-items: center; }
.moon-next-container {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); }
.moon-next-month tr {
  height: 40px;
  align-items: center;
  display: flex;
  flex-direction: row;
  padding: 5px; }
.moon-next-month {
  margin: 15px; }
.moon-next-icon {
  width: 25px;
  height: 25px; }
.moon-next-text {
  font-size: 11px;
  margin-left: 10px; }
.moon-next-legend {
  font-size: 8px; }
.moon-icon {
  margin-left: auto;
  margin-right: auto;
  display: block;
  margin-bottom: 20px;
  margin-top: 20px; }
  .moon-current-container .moon-icon {
    height: 100px;
    width: 100px; }
.moon-item {
  margin: 10px; }
.moon-item p {
  text-align: center; }
.moon-date {
  text-transform: uppercase; }
.moon-description {
  font-style: italic;
  font-size: 12px; }

.moon-header {
  position: relative; }

.moon-header__icon {
  animation: moon-shake 1000ms 1 linear both;
  animation-delay: 1300ms;
  transform: translate3d(0, 0, 0);
  backface-visibility: hidden;
  perspective: 1000px;
  cursor: pointer;
  position: relative;
  left: -0.5rem;
  top: .6rem;
  fill: #debc4e; }

.moon-datepicker {
  position: relative;
  z-index: 2;
  margin-top: 2rem; }
  .moon-datepicker input {
    padding-left: 6rem;
    margin-left: -6rem;
    opacity: 0;
    cursor: pointer; }
  .moon-datepicker .vdp-datepicker__calendar .cell.selected,
  .moon-datepicker .vdp-datepicker__calendar .cell.selected:hover {
    background: #344b6d;
    color: #fff; }
  .moon-datepicker .vdp-datepicker__calendar .cell:not(.blank):not(.disabled).day:hover {
    border: 1px solid #344b6d; }

.moon-date {
  position: relative;
  z-index: 1;
  top: -2.5em;
  left: 0rem;
  cursor: pointer; }

@keyframes moon-shake {
  from {
    transform: scale3d(0.9, 0.9, 0.9); }
  10%,
  20% {
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -6deg); }
  30%,
  50%,
  70%,
  90% {
    transform: scale3d(1.2, 1.2, 1.2) rotate3d(0, 0, 1, 6deg); }
  40%,
  60%,
  80% {
    transform: scale3d(1.2, 1.2, 1.2) rotate3d(0, 0, 1, -6deg); }
  to {
    transform: scale3d(1, 1, 1); } }
.holidays-zone-name {
  font-weight: bold; }
.holidays-zone-description {
  font-style: italic;
  font-size: 1.3rem; }
.holidays-zone-container {
  margin-bottom: 20px;
  padding-left: 10px; }
.holidays-zone-infos-container {
  margin-bottom: 10px; }
.holidays-name {
  font-weight: bold;
  font-size: 1.3rem;
  margin-right: 15px; }
.holidays-next-prev-years-link {
  display: flex;
  flex-direction: column;
  text-align: center;
  margin-top: 10px; }
.holidays-next-prev-years-button-container {
  display: flex;
  justify-content: space-around;
  margin-top: 20px; }
.holidays-next-prev-years-link-container {
  display: flex;
  justify-content: space-around;
  margin-top: 5px;
  flex-wrap: wrap; }
.holidays-element {
  padding-right: 20px;
  display: inline-flex;
  justify-content: space-between;
  max-width: 500px; }
.holidays-date {
  font-size: 1.3rem; }
.holidays-container {
  display: flex;
  flex-direction: column; }
.holidays-image {
  width: 200px;
  height: 200px;
  margin-top: auto;
  margin-bottom: auto;
  margin-right: 30px; }
.holidays-button {
  width: 100%;
  height: 100%;
  background: #344b6d;
  display: flex;
  align-items: center;
  justify-content: center; }
  .holidays-button svg {
    fill: #debc4e;
    height: 1.5rem; }
  .holidays-button:hover {
    background: #415e89; }
  .holidays-button-container {
    height: 4rem;
    width: 4rem;
    cursor: pointer; }

#holidays-page .holidays-page-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: center; }

.user-modal {
  position: absolute;
  top: 50%;
  right: 50%;
  background: #fff;
  z-index: 1;
  transform: translate3d(50%, -50%, 0);
  width: 100%;
  max-width: 76rem; }

.user-modal__overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(52, 75, 109, 0.5);
  z-index: 0; }

.account-modal {
  display: block;
  position: fixed;
  right: 3rem;
  background: #fff;
  z-index: 1;
  min-height: 53rem; }
  @media (min-width: 601px) {
    .account-modal {
      width: 53rem;
      top: 50%;
      left: 50%;
      transform: translate3d(-50%, -50%, 0); } }

.account-modal__loader {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0; }

.account-modal {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: #fff;
  z-index: 1; }
  .page-is-ready .account-modal {
    display: block; }
  @media (min-width: 601px) {
    .account-modal {
      transition: all 300ms ease;
      top: 50%;
      left: 50%;
      transform: translate3d(-50%, -50%, 0);
      right: auto;
      bottom: auto;
      width: 53rem;
      min-height: 53rem; } }

.account-modal__overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(52, 75, 109, 0.5); }

.account-modal__close {
  text-align: right;
  background: #e9edf4;
  padding: 1rem;
  position: relative;
  z-index: 99999999999999999999999999; }
  .account-modal__close svg {
    fill: #88a1c6;
    height: 1.4rem;
    width: 1.4rem;
    position: relative;
    top: 0.3rem;
    right: 1rem;
    cursor: pointer; }
    .account-modal__close svg:hover {
      fill: #486896; }

.account-modal__header {
  background: #e9edf4;
  display: flex; }
  .account-modal__header li {
    display: block;
    width: 50%;
    text-align: center;
    padding: 2rem 0;
    font-weight: 600;
    text-transform: uppercase;
    color: #88a1c6;
    cursor: pointer; }
    .account-modal__header li:hover {
      color: #2d415f; }
    .account-modal__header li span {
      position: relative; }
      .account-modal__header li span:after {
        transition: opacity 600ms ease;
        content: '';
        position: absolute;
        left: 1rem;
        right: 1rem;
        bottom: -1rem;
        height: 0.2rem;
        background: #debc4e;
        display: block;
        opacity: 0; }
  .account-modal__header .is-active {
    color: #2d415f;
    cursor: default; }
    .account-modal__header .is-active span:after {
      opacity: 1; }

.account-modal__tabs {
  padding: 2rem; }

.account-modal-enter-active, .account-modal-leave-active {
  transition: all 0.3s ease-out;
  transform: translate3d(0, 0, 0);
  opacity: 1; }

.account-modal-enter, .account-modal-leave-to {
  transform: translate3d(0, 20px, 0);
  opacity: 0; }

@media (min-width: 601px) {
  .account-modal-enter-active, .account-modal-leave-active {
    transition: all 0.3s ease-out;
    transform: translate3d(-50%, -50%, 0);
    opacity: 1; }

  .account-modal-enter, .account-modal-leave-to {
    transform: translate3d(-50%, -30%, 0);
    opacity: 0; } }
.account-modal-overlay-enter-active, .account-modal-overlay-leave-active {
  transition: all 0.3s ease-out;
  opacity: 1; }

.account-modal-overlay-enter, .account-modal-overlay-leave-to {
  opacity: 0; }

.modal-tabs-enter-active, .modal-tabs-leave-active {
  transition: all 0.15s ease-out;
  transform: translate3d(0, 0, 0);
  opacity: 1; }

.modal-tabs-enter, .modal-tabs-leave-to {
  transform: translate3d(0, 0px, 0);
  opacity: 0; }

.modal--tache,
.modal--anniv,
.modal--fete {
  background: #fff; }
  .modal--tache .modal__icon,
  .modal--anniv .modal__icon,
  .modal--fete .modal__icon {
    left: 90%;
    top: 90%;
    float: right; }

.account-modal__loader {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0; }

.account-modal__message {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 0 4rem; }
  .account-modal__message-icon {
    margin-right: 3rem; }
  .account-modal__message.is-error svg {
    fill: red; }
  .account-modal__message.is-success svg {
    fill: green; }
  .account-modal__message h3 {
    font-size: 2.4rem;
    margin-bottom: 1rem; }
  .account-modal__message button {
    background: #344b6d;
    color: #f7f8fb;
    border: none;
    text-transform: uppercase;
    padding: 1rem 3rem;
    font-size: 1.6rem;
    margin-top: 2rem; }

.modal--vue-account {
  z-index: 99999999999999999999999;
  box-shadow: 0 0 100vw 100vh rgba(52, 75, 109, 0.5);
  height: 20rem;
  min-height: unset;
  width: 36rem; }

.modal--vue-account-large {
  z-index: 99999999999999999999999;
  box-shadow: 0 0 100vw 100vh rgba(52, 75, 109, 0.5);
  min-height: 14em;
  max-height: 30em; }

.account-modal__buttons {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }

.modal__content {
  background: #fff; }

.user-modal__close {
  cursor: pointer;
  position: absolute;
  right: 3.4rem;
  z-index: 1;
  font-size: 4.3rem;
  top: 2.2rem; }

.user-modal-mobile {
  position: absolute;
  top: 1rem;
  left: 1rem;
  right: 1rem;
  bottom: 1rem;
  background: #fff;
  display: none; }
  .page-is-ready .user-modal-mobile {
    display: block; }
  .user-modal-mobile .sidebar__close {
    position: absolute;
    right: 2rem;
    top: 6rem; }

.user-modal-mobile-enter-active,
.user-modal-mobile-leave-active {
  transition: all .3s ease;
  transform: translate3d(0, 0, 0); }

.user-modal-mobile-enter,
.user-modal-mobile-leave-to {
  opacity: 0;
  transform: translate3d(0, 20px, 0); }

.user-modal-enter-active, .user-modal-leave-active {
  transition: all 0.3s ease-out;
  opacity: 1; }

.user-modal-enter, .user-modal-leave-to {
  opacity: 0; }

.site-filter-toggle {
  background: #f7f8fb;
  border-radius: 14rem;
  margin-bottom: 1rem;
  display: flex;
  align-items: center;
  padding: 0 1rem;
  height: 4rem;
  justify-content: center;
  font-weight: bold;
  color: #344b6d;
  cursor: pointer; }
  .site-filter-toggle svg {
    height: 1.6rem;
    fill: #344b6d;
    margin-left: 1rem; }
  .site-filter-toggle:hover {
    background: #344b6d;
    color: #f7f8fb; }
    .site-filter-toggle:hover svg {
      fill: #fff; }
  .site-filter-toggle span {
    font-size: .9rem;
    padding-bottom: 1rem;
    align-self: flex-start;
    position: relative;
    top: -.75rem;
    display: none; }
    @media (min-width: 1201px) {
      .site-filter-toggle span {
        display: inline; } }
  @media (min-width: 1201px) {
    .site-filter-toggle div {
      position: relative;
      top: .5rem; } }

.filterbar__inner {
  background: #fff;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 4rem;
  right: 4rem;
  z-index: 2; }
  @media (max-width: 900px) {
    .filterbar__inner {
      top: 0;
      bottom: 0;
      transform: none;
      left: 0;
      right: 0; }
      .filterbar__inner .filterbar__col {
        background: #fff; } }

.filterbar__row {
  display: flex;
  justify-content: space-between;
  margin: 0 .4rem; }

.filterbar__col {
  background: rgba(233, 237, 244, 0.3);
  flex: 1 1 auto;
  width: 100%; }
  .filterbar__col img {
    max-width: 100%;
    display: block;
    margin: 2rem auto; }

.filterbar__overlay {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 1;
  background: rgba(52, 75, 109, 0.5); }

.filter-modal-enter-active, .filter-modal-leave-active {
  transition: opacity .5s; }

.filter-modal-enter, .filter-modal-leave-to {
  opacity: 0; }

.filterbar__close {
  position: absolute;
  right: 1rem;
  top: 1rem;
  cursor: pointer;
  z-index: 3;
  opacity: 0.7; }
  .filterbar__close:hover {
    opacity: 1; }
  .filterbar__close svg {
    height: 1rem;
    fill: #344b6d; }

.fade-enter-active, .fade-leave-active {
  transition: opacity .5s; }

.fade-enter, .fade-leave-to {
  opacity: 0; }

.filterbar__col {
  display: block;
  background: #F8FAFF;
  border: 2px solid #fff;
  margin-top: 1rem;
  padding: 3rem 3rem 2rem; }
  .filterbar__col li {
    display: block;
    margin: 2rem 0; }

.filterbar__wrapper {
  overflow-x: hidden;
  padding: 0; }

.filterbar__row {
  transition: all 300ms ease;
  transform: translate3d(0%, 0, 0); }

.filterbar__col {
  flex-shrink: 0;
  width: 100%; }
  @media (min-width: 601px) {
    .filterbar__col {
      width: 50%; } }
  @media (min-width: 901px) {
    .filterbar__col {
      width: 33.3%; } }
  @media (min-width: 1201px) {
    .filterbar__col {
      width: 25%; } }
  @media (min-width: 1501px) {
    .filterbar__col {
      width: 20%; } }

.filterbar__left,
.filterbar__right {
  position: absolute;
  right: 0;
  top: 50%;
  width: 4rem;
  height: 4rem;
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 1; }
  @media (min-width: 601px) {
    .filterbar__left,
    .filterbar__right {
      right: -1rem; } }
  .filterbar__left svg,
  .filterbar__right svg {
    width: 1.6rem;
    fill: #fff; }
  .filterbar__left.is-active,
  .filterbar__right.is-active {
    display: flex;
    cursor: pointer;
    background: #202e44; }

.filterbar__left {
  left: 0;
  right: auto; }
  @media (min-width: 601px) {
    .filterbar__left {
      left: -1rem;
      right: auto; } }

.filter__label {
  color: #344B6D;
  font-family: sans-serif;
  font-style: normal;
  font-weight: bold;
  font-size: 16px;
  line-height: 20px;
  text-align: center; }

.filter__item-text {
  font-style: normal;
  font-weight: normal;
  font-size: 1.6rem;
  line-height: 1.2;
  text-decoration-line: none;
  color: #344B6D; }

.filter__item-desc {
  margin: 1rem 0;
  font-size: 1.2rem;
  padding-left: 2.1rem; }
  .filter__item-desc a {
    text-decoration: none;
    color: #6f6f6f; }
    .filter__item-desc a:hover {
      color: #6f6f6f;
      text-decoration: underline; }

.filterbar__desc {
  margin: 2rem 0;
  color: #6f6f6f; }
  .filterbar__desc a {
    text-decoration: none;
    color: #6f6f6f; }
    .filterbar__desc a:hover {
      text-decoration: underline; }

.filter__input-group {
  display: flex;
  align-items: center; }
  .filter__input-group input {
    margin-right: 1rem; }

@media (min-width: 601px) {
  .filter-toggle--mobile {
    display: flex;
    align-items: center;
    margin-bottom: 1rem; }
    .filter-toggle--mobile .site-filter-toggle {
      font-size: 1.4rem;
      width: 250px;
      flex: 1 0 auto;
      margin-right: 1rem;
      margin-bottom: 0; } }
@media (min-width: 1201px) {
  .filter-toggle--mobile {
    display: none; } }

.filter-toggle__adblock--mobile {
  max-height: 60px;
  margin-bottom: 1rem; }
  @media (min-width: 601px) {
    .filter-toggle__adblock--mobile {
      margin-bottom: 0;
      width: 50%;
      max-height: 60px; } }
  .filter-toggle__adblock--mobile img {
    max-width: 100%;
    max-height: 32px; }

.site-adbar {
  width: 20rem;
  flex: 0 0 auto;
  position: relative;
  display: none; }

.site-adbar {
  display: none; }
  @media (min-width: 1201px) {
    .site-adbar {
      display: block;
      margin-right: 0;
      width: 20rem;
      margin-left: 2rem;
      order: 3;
      align-self: stretch; }
      .site-adbar .adswrapper {
        width: 20rem;
        overflow: hidden; } }

.site-adblock--mobile {
  margin: 1rem;
  height: 60px;
  padding: 1rem  0;
  width: auto; }
  .site-adblock--mobile img {
    width: 100%;
    height: 32px; }
  @media (min-width: 1001px) {
    .site-adblock--mobile {
      display: none; } }

@media (min-width: 901px) {
  .pageType .site-adblock--mobile {
    padding: 0; } }

.site-adblock-top--type {
  display: none; }
  @media (min-width: 1001px) {
    .site-adblock-top--type {
      height: 90px;
      display: block;
      padding-top: 1.6rem;
      margin-bottom: 1.6rem; } }
  .site-adblock-top--type img {
    max-width: 100%;
    height: auto; }

.calendar__container[data-start-month='01'],
.calendar__container[data-start-month='1'] {
  transform: translate3d(0%, 0, 0); }
  @media (min-width: 601px) {
    .calendar__container[data-start-month='01'],
    .calendar__container[data-start-month='1'] {
      transform: translate3d(0%, 0, 0); } }
  @media (min-width: 1301px) {
    .calendar__container[data-start-month='01'],
    .calendar__container[data-start-month='1'] {
      transform: translate3d(0%, 0, 0); } }

.calendar__container[data-start-month='02'],
.calendar__container[data-start-month='2'] {
  transform: translate3d(-100%, 0, 0); }
  @media (min-width: 601px) {
    .calendar__container[data-start-month='02'],
    .calendar__container[data-start-month='2'] {
      transform: translate3d(-50%, 0, 0); } }
  @media (min-width: 1301px) {
    .calendar__container[data-start-month='02'],
    .calendar__container[data-start-month='2'] {
      transform: translate3d(0%, 0, 0); } }

.calendar__container[data-start-month='03'],
.calendar__container[data-start-month='3'] {
  transform: translate3d(-200%, 0, 0); }
  @media (min-width: 601px) {
    .calendar__container[data-start-month='03'],
    .calendar__container[data-start-month='3'] {
      transform: translate3d(-100%, 0, 0); } }
  @media (min-width: 1301px) {
    .calendar__container[data-start-month='03'],
    .calendar__container[data-start-month='3'] {
      transform: translate3d(-33.3%, 0, 0); } }
  @media (min-width: 1601px) {
    .calendar__container[data-start-month='03'],
    .calendar__container[data-start-month='3'] {
      transform: translate3d(-25%, 0, 0); } }
  @media (min-width: 2001px) {
    .calendar__container[data-start-month='03'],
    .calendar__container[data-start-month='3'] {
      transform: translate3d(-0.2%, 0, 0); } }

.calendar__container[data-start-month='04'],
.calendar__container[data-start-month='4'] {
  transform: translate3d(-300%, 0, 0); }
  @media (min-width: 601px) {
    .calendar__container[data-start-month='04'],
    .calendar__container[data-start-month='4'] {
      transform: translate3d(-150%, 0, 0); } }
  @media (min-width: 1301px) {
    .calendar__container[data-start-month='04'],
    .calendar__container[data-start-month='4'] {
      transform: translate3d(-66.6%, 0, 0); } }
  @media (min-width: 1601px) {
    .calendar__container[data-start-month='04'],
    .calendar__container[data-start-month='4'] {
      transform: translate3d(-50%, 0, 0); } }
  @media (min-width: 2001px) {
    .calendar__container[data-start-month='04'],
    .calendar__container[data-start-month='4'] {
      transform: translate3d(-16.6%, 0, 0); } }

.calendar__container[data-start-month='05'],
.calendar__container[data-start-month='5'] {
  transform: translate3d(-400%, 0, 0); }
  @media (min-width: 601px) {
    .calendar__container[data-start-month='05'],
    .calendar__container[data-start-month='5'] {
      transform: translate3d(-200%, 0, 0); } }
  @media (min-width: 1301px) {
    .calendar__container[data-start-month='05'],
    .calendar__container[data-start-month='5'] {
      transform: translate3d(-100%, 0, 0); } }
  @media (min-width: 1601px) {
    .calendar__container[data-start-month='05'],
    .calendar__container[data-start-month='5'] {
      transform: translate3d(-75%, 0, 0); } }
  @media (min-width: 2001px) {
    .calendar__container[data-start-month='05'],
    .calendar__container[data-start-month='5'] {
      transform: translate3d(-33.4%, 0, 0); } }

.calendar__container[data-start-month='06'],
.calendar__container[data-start-month='6'] {
  transform: translate3d(-500%, 0, 0); }
  @media (min-width: 601px) {
    .calendar__container[data-start-month='06'],
    .calendar__container[data-start-month='6'] {
      transform: translate3d(-250%, 0, 0); } }
  @media (min-width: 1301px) {
    .calendar__container[data-start-month='06'],
    .calendar__container[data-start-month='6'] {
      transform: translate3d(-133.3%, 0, 0); } }
  @media (min-width: 1601px) {
    .calendar__container[data-start-month='06'],
    .calendar__container[data-start-month='6'] {
      transform: translate3d(-100%, 0, 0); } }
  @media (min-width: 2001px) {
    .calendar__container[data-start-month='06'],
    .calendar__container[data-start-month='6'] {
      transform: translate3d(-50%, 0, 0); } }

.calendar__container[data-start-month='07'],
.calendar__container[data-start-month='7'] {
  transform: translate3d(-600%, 0, 0); }
  @media (min-width: 601px) {
    .calendar__container[data-start-month='07'],
    .calendar__container[data-start-month='7'] {
      transform: translate3d(-300%, 0, 0); } }
  @media (min-width: 1301px) {
    .calendar__container[data-start-month='07'],
    .calendar__container[data-start-month='7'] {
      transform: translate3d(-166.6%, 0, 0); } }
  @media (min-width: 1601px) {
    .calendar__container[data-start-month='07'],
    .calendar__container[data-start-month='7'] {
      transform: translate3d(-125%, 0, 0); } }
  @media (min-width: 2001px) {
    .calendar__container[data-start-month='07'],
    .calendar__container[data-start-month='7'] {
      transform: translate3d(-66.6%, 0, 0); } }

.calendar__container[data-start-month='08'],
.calendar__container[data-start-month='8'] {
  transform: translate3d(-700%, 0, 0); }
  @media (min-width: 601px) {
    .calendar__container[data-start-month='08'],
    .calendar__container[data-start-month='8'] {
      transform: translate3d(-350%, 0, 0); } }
  @media (min-width: 1301px) {
    .calendar__container[data-start-month='08'],
    .calendar__container[data-start-month='8'] {
      transform: translate3d(-200%, 0, 0); } }
  @media (min-width: 1601px) {
    .calendar__container[data-start-month='08'],
    .calendar__container[data-start-month='8'] {
      transform: translate3d(-150%, 0, 0); } }
  @media (min-width: 2001px) {
    .calendar__container[data-start-month='08'],
    .calendar__container[data-start-month='8'] {
      transform: translate3d(-83.2%, 0, 0); } }

.calendar__container[data-start-month='09'],
.calendar__container[data-start-month='9'] {
  transform: translate3d(-800%, 0, 0); }
  @media (min-width: 601px) {
    .calendar__container[data-start-month='09'],
    .calendar__container[data-start-month='9'] {
      transform: translate3d(-400%, 0, 0); } }
  @media (min-width: 1301px) {
    .calendar__container[data-start-month='09'],
    .calendar__container[data-start-month='9'] {
      transform: translate3d(-233.3%, 0, 0); } }
  @media (min-width: 1601px) {
    .calendar__container[data-start-month='09'],
    .calendar__container[data-start-month='9'] {
      transform: translate3d(-175%, 0, 0); } }
  @media (min-width: 2001px) {
    .calendar__container[data-start-month='09'],
    .calendar__container[data-start-month='9'] {
      transform: translate3d(-99.8%, 0, 0); } }

.calendar__container[data-start-month='10'] {
  transform: translate3d(-900%, 0, 0); }
  @media (min-width: 601px) {
    .calendar__container[data-start-month='10'] {
      transform: translate3d(-450%, 0, 0); } }
  @media (min-width: 1301px) {
    .calendar__container[data-start-month='10'] {
      transform: translate3d(-266.6%, 0, 0); } }
  @media (min-width: 1601px) {
    .calendar__container[data-start-month='10'] {
      transform: translate3d(-200%, 0, 0); } }
  @media (min-width: 2001px) {
    .calendar__container[data-start-month='10'] {
      transform: translate3d(-99.8%, 0, 0); } }

.calendar__container[data-start-month='11'] {
  transform: translate3d(-1000%, 0, 0); }
  @media (min-width: 601px) {
    .calendar__container[data-start-month='11'] {
      transform: translate3d(-500%, 0, 0); } }
  @media (min-width: 1301px) {
    .calendar__container[data-start-month='11'] {
      transform: translate3d(-300%, 0, 0); } }
  @media (min-width: 1601px) {
    .calendar__container[data-start-month='11'] {
      transform: translate3d(-200%, 0, 0); } }
  @media (min-width: 2001px) {
    .calendar__container[data-start-month='11'] {
      transform: translate3d(-99.8%, 0, 0); } }

.calendar__container[data-start-month='12'] {
  transform: translate3d(-1100%, 0, 0); }
  @media (min-width: 601px) {
    .calendar__container[data-start-month='12'] {
      transform: translate3d(-500%, 0, 0); } }
  @media (min-width: 1301px) {
    .calendar__container[data-start-month='12'] {
      transform: translate3d(-300%, 0, 0); } }
  @media (min-width: 1601px) {
    .calendar__container[data-start-month='12'] {
      transform: translate3d(-200%, 0, 0); } }
  @media (min-width: 2001px) {
    .calendar__container[data-start-month='12'] {
      transform: translate3d(-99.8%, 0, 0); } }

.account-form-enter-active,
.account-form-leave-active {
  transition: all .3s ease;
  transform: translate3d(0, 0, 0); }

.account-form-enter,
.account-form-leave-to
 {
  opacity: 0;
  transform: translate3d(0, 20px, 0); }

.sk-three-bounce {
  width: 80px;
  margin: 0 auto;
  text-align: center; }

.sk-three-bounce .sk-child {
  width: 10px;
  height: 10px;
  background-color: #344b6d;
  border-radius: 100%;
  display: inline-block;
  animation: sk-three-bounce 1.4s ease-in-out 0s infinite both; }

.sk-three-bounce .sk-bounce1 {
  animation-delay: -0.32s; }

.sk-three-bounce .sk-bounce2 {
  animation-delay: -0.16s; }
@keyframes sk-three-bounce {
  0%,
  80%,
  100% {
    transform: scale(0); }
  40% {
    transform: scale(1); } }
.fade-enter-active, .fade-leave-active {
  transition: opacity .5s; }

.fade-enter, .fade-leave-to {
  opacity: 0; }

.no-js .filterbar,
.no-js #vue-offcanvas,
.no-js #vue-account,
.no-js #vue-user-modal,
.page-not-ready .filterbar,
.page-not-ready #vue-offcanvas,
.page-not-ready #vue-account,
.page-not-ready #vue-user-modal {
  display: none; }

.events-by-year {
  margin: 6rem 0 2rem;
  background: rgba(52, 75, 109, 0.05);
  padding: 2rem 1rem; }
  .events-by-year li {
    margin: .5rem 0; }
    .events-by-year li.is-current-year {
      font-weight: bold;
      color: #debc4e; }
  .events-by-year__title {
    font-weight: bold;
    text-align: center;
    margin-bottom: 1rem; }
  .events-by-year__columns {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-around; }
    @supports not (-ms-ime-align: auto) {
      .events-by-year__columns {
        justify-content: space-evenly; } }
  .events-by-year__left, .events-by-year__right {
    display: flex;
    flex-direction: column;
    text-align: center; }
  .events-by-year__separator {
    border-left: 1px solid #eee;
    margin: 0 1rem; }

@font-face {
  font-family: 'fontello';
  src: url("https://www.very-utile.com/default/CMS/css/common/../../fonts/fontello.eot?");
  src: url("https://www.very-utile.com/default/CMS/css/common/../../fonts/fontello.eot?#iefix") format("embedded-opentype"), url("https://www.very-utile.com/default/CMS/css/common/../../fonts/fontello.woff2?") format("woff2"), url("https://www.very-utile.com/default/CMS/css/common/../../fonts/fontello.woff?") format("woff"), url("https://www.very-utile.com/default/CMS/css/common/../../fonts/fontello.ttf?") format("truetype"), url("https://www.very-utile.com/default/CMS/css/common/../../fonts/fontello.svg?#fontello") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }
/* Chrome hack: SVG is rendered more smooth in Windozze. 100% magic, uncomment if you need it. */
/* Note, that will break hinting! In other OS-es font will be not as sharp as it could be */
/*
@media screen and (-webkit-min-device-pixel-ratio:0) {
  @font-face {
    font-family: 'fontello';
    src: url('https://www.very-utile.com/default/CMS/css/common/../font/fontello.svg?11441027#fontello') format('svg');
  }
}
*/
[class^="icon-"]:before, [class*=" icon-"]:before {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: never;
  display: inline-block;
  text-decoration: inherit;
  width: 1em;
  margin-right: .2em;
  text-align: center;
  /* opacity: .8; */
  /* For safety - reset parent styles, that can break glyph codes*/
  font-variant: normal;
  text-transform: none;
  /* fix buttons height, for twitter bootstrap */
  line-height: 1em;
  /* Animation center compensation - margins should be symmetric */
  /* remove if not needed */
  margin-left: .2em;
  /* you can be more comfortable with increased icons size */
  /* font-size: 120%; */
  /* Font smoothing. That was taken from TWBS */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  /* Uncomment for 3D effect */
  /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */ }

.icon-clock:before {
  content: '\e800'; }

/* '' */
.icon-phase-8:before {
  content: '\e801'; }

/* '' */
.icon-phase-2:before {
  content: '\e802'; }

/* '' */
.icon-phase-4:before {
  content: '\e803'; }

/* '' */
.icon-phase-6:before {
  content: '\e804'; }

/* '' */
.icon-birthday:before {
  content: '\f1fd'; }

/* '' */
.icon-user-o:before {
  content: '\f2c0'; }

/* '' */
body #tarteaucitronRoot {
  --popupPositionTop: 50%;
  --popupPositionLeft: 50%;
  --popupTransform: translate(-50%, -50%); }