@charset "UTF-8";
html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

*, *::after, *::before {
  -webkit-box-sizing: inherit;
          box-sizing: inherit; }

/*! normalize.css v3.0.1 | MIT License | git.io/normalize */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/**
 * Remove default margin.
 */
body {
  margin: 0; }

/* HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11 and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block; }

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */
audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0; }

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
 */
[hidden],
template {
  display: none; }

/* Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a {
  background: transparent; }

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0; }

/* Text-level semantics
   ========================================================================== */
/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted; }

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */
b,
strong {
  font-weight: bold; }

/**
 * Address styling not present in Safari and Chrome.
 */
dfn {
  font-style: italic; }

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/**
 * Address styling not present in IE 8/9.
 */
mark {
  background: #ff0;
  color: #000; }

/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%; }

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

/* Embedded content
   ========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9/10.
 */
img {
  border: 0; }

/**
 * Correct overflow not hidden in IE 9/10/11.
 */
svg:not(:root) {
  overflow: hidden; }

/* Grouping content
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari.
 */
figure {
  margin: 1em 40px; }

/**
 * Address differences between Firefox and other browsers.
 */
hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  height: 0; }

/**
 * Contain overflow in all browsers.
 */
pre {
  overflow: auto; }

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

/* Forms
   ========================================================================== */
/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */
/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */ }

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */
button {
  overflow: visible; }

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */
button,
select {
  text-transform: none; }

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */ }

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default; }

/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
input {
  line-height: normal; }

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type="checkbox"],
input[type="radio"] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
 *    (include `-moz` to future-proof).
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  -webkit-box-sizing: content-box;
  /* 2 */
  box-sizing: content-box; }

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */
textarea {
  overflow: auto; }

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */
optgroup {
  font-weight: bold; }

/* Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0; }

td,
th {
  padding: 0; }

@font-face {
  font-family: "SF Pro Display";
  font-style: normal;
  font-display: swap;
  font-weight: 900;
  src: url("/fonts/sf-pro-display_heavy.woff2") format("woff2"); }

@font-face {
  font-family: "SF Pro Display";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url("/fonts/sf-pro-display_bold.woff2") format("woff2"); }

@font-face {
  font-family: "SF Pro Display";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url("/fonts/sf-pro-display_semibold.woff2") format("woff2"); }

@font-face {
  font-family: "SF Pro Display";
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url("/fonts/sf-pro-display_medium.woff2") format("woff2"); }

@font-face {
  font-family: "SF Pro Display";
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url("/fonts/sf-pro-display_regular.woff2") format("woff2"); }

@font-face {
  font-family: "SF Pro Display";
  font-style: normal;
  font-display: swap;
  font-weight: 300;
  src: url("/fonts/sf-pro-display_light.woff2") format("woff2"); }

@font-face {
  font-family: "SF Compact";
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url("/fonts/sfcompacttext-medium.woff2") format("woff2"); }

@font-face {
  font-family: "SF Compact";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url("/fonts/sfcompacttext-bold.woff2") format("woff2"); }

body {
  width: 100%;
  color: #EADFDC;
  background: #00876A;
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", sans-serif;
  font-size: 1.66666656vw;
  line-height: 1.2;
  margin: 0;
  padding: 0;
  text-align: left;
  -webkit-font-smoothing: antialiased; }
  @media screen and (max-width: 767px) {
    body {
      font-size: 4.666666368vw; } }

h1, h2, h3, h4, h5, h6 {
  font-weight: 400;
  line-height: 1.2;
  color: currentColor; }

p {
  margin-top: 0; }

svg {
  display: inline-block;
  width: 100%;
  height: 100%;
  fill: currentColor;
  overflow: hidden; }

#symbols {
  display: none; }

a {
  text-decoration: none;
  color: currentColor;
  -webkit-transition: color .3s ease;
  transition: color .3s ease; }
  a:hover {
    color: currentColor;
    text-decoration: none; }
  a:focus {
    outline: none;
    text-decoration: none;
    color: currentColor; }

button {
  background: none;
  border: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  padding: 0;
  margin: 0;
  border-radius: 0;
  cursor: pointer;
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", sans-serif; }
  button:focus {
    outline: none; }

figure {
  margin: 0;
  padding: 0; }

dl, dt, dd {
  margin: 0;
  padding: 0; }

img {
  width: 100%;
  display: block;
  height: auto; }

video {
  display: block; }

.page-home {
  background: #E2F4DE;
  position: relative;
  color: #5F9F75; }

.page-contact {
  background: #E2F4DE;
  color: #5F9F75; }

.page-discover {
  background: #E2F4DE;
  color: #5F9F75; }

.page-camping {
  background: #E2F4DE;
  color: #5F9F75; }

.page-campus {
  background: #FCF6F0;
  color: #5F9F75; }

.page-manifesto {
  background: #F7F7F7;
  color: #000000; }

.page-privacy {
  background: #F7F7F7;
  color: #000000; }

.page-admissions {
  background: #F7F7F7;
  color: #000000; }

.page-accreditation {
  background: #AECBD9;
  color: #ffffff; }

.page-education {
  background: #AECBD9;
  color: #ffffff; }

.page-life {
  background: #E2F4DE;
  color: #5F9F75; }

.page-team {
  background: #AECBD9;
  color: #ffffff; }

.page-faq {
  background: #9C99A2;
  color: #ffffff; }

.page-olm {
  background: #F7F7F7;
  color: #9C99A2; }

.page-404 {
  background: #9C99A2;
  color: #ffffff; }

.body-color-blue {
  background: #AECBD9; }

.menu {
  -webkit-transition: color .3s ease, background .3s ease;
  transition: color .3s ease, background .3s ease; }
  .menu--home {
    color: #5F9F75;
    background: rgba(226, 244, 222, 0.8); }
    .menu--home .logo {
      opacity: 0;
      -webkit-transition: opacity .3s ease;
      transition: opacity .3s ease; }
      @media screen and (max-width: 767px) {
        .menu--home .logo {
          opacity: 1; } }
      .menu--home .logo.in-view {
        opacity: 1; }
    @media screen and (max-width: 767px) {
      .menu--home .menu-container {
        background: #e2f4de; } }
  .menu--manifesto {
    color: #000000;
    background: rgba(243, 236, 140, 0.8); }
    @media screen and (max-width: 767px) {
      .menu--manifesto .menu-container {
        background: #f3ec8c; } }
  .menu--admissions {
    color: #5F9F75;
    background: rgba(226, 244, 222, 0.8); }
    @media screen and (max-width: 767px) {
      .menu--admissions .menu-container {
        background: #e2f4de; } }
  .menu--accreditation, .menu--campus {
    color: #ffffff;
    background: rgba(174, 203, 217, 0.8); }
    @media screen and (max-width: 767px) {
      .menu--accreditation .menu-container, .menu--campus .menu-container {
        background: #aecbd9; } }
  .menu--education {
    color: #ffffff;
    background: rgba(174, 203, 217, 0.8); }
    @media screen and (max-width: 767px) {
      .menu--education .menu-container {
        background: #aecbd9; } }
  .menu--team {
    color: #ffffff;
    background: rgba(174, 203, 217, 0.8); }
    @media screen and (max-width: 767px) {
      .menu--team .menu-container {
        background: #aecbd9; } }
  .menu--guides {
    color: #000000;
    background: rgba(255, 159, 157, 0.8); }
    @media screen and (max-width: 767px) {
      .menu--guides .menu-container {
        background: #ff9f9d; } }
  .menu--life, .menu--discover, .menu--contact, .menu--camping, .menu--ourwhy {
    color: #5F9F75;
    background: rgba(226, 244, 222, 0.8); }
    @media screen and (max-width: 767px) {
      .menu--life .menu-container, .menu--discover .menu-container, .menu--contact .menu-container, .menu--camping .menu-container, .menu--ourwhy .menu-container {
        background: #e2f4de; } }
  .menu--faq {
    color: #ffffff;
    background: rgba(156, 153, 162, 0.8); }
    @media screen and (max-width: 767px) {
      .menu--faq .menu-container {
        background: #9c99a2; } }
  .menu--privacy {
    color: #000000;
    background: rgba(247, 247, 247, 0.8); }
    @media screen and (max-width: 767px) {
      .menu--privacy .menu-container {
        background: #f7f7f7; } }
  .menu--404 {
    color: #ffffff;
    background: rgba(156, 153, 162, 0.8); }
    @media screen and (max-width: 767px) {
      .menu--404 .menu-container {
        background: #9c99a2; } }
  .menu--olm {
    color: #ffffff;
    background: rgba(156, 153, 162, 0.8); }
    @media screen and (max-width: 767px) {
      .menu--olm .menu-container {
        background: #9c99a2; } }
  @media screen and (min-width: 768px) {
    .has-submenu .menu {
      color: #ffffff !important;
      background: rgba(156, 153, 162, 0.8) !important; } }
  @media screen and (min-width: 768px) {
    .has-submenu-about .menu {
      color: #ffffff !important;
      background: rgba(156, 153, 162, 0.8) !important; } }
  @media screen and (min-width: 768px) {
    .has-submenu-fees .menu {
      color: #ffffff !important;
      background: rgba(156, 153, 162, 0.8) !important; } }

.menu-color-pink .menu {
  color: #DA473C;
  background: rgba(255, 159, 157, 0.8); }
  @media screen and (max-width: 767px) {
    .menu-color-pink .menu .menu-container {
      background: #ff9f9d; } }

.menu-color-grey .menu {
  color: #ffffff;
  background: rgba(156, 153, 162, 0.8); }
  @media screen and (max-width: 767px) {
    .menu-color-grey .menu .menu-container {
      background: #9c99a2; } }

.menu-color-blue .menu {
  color: #2E5C73;
  background: rgba(174, 203, 217, 0.8); }
  @media screen and (max-width: 767px) {
    .menu-color-blue .menu .menu-container {
      background: #aecbd9; } }

.menu-color-lgrey .menu {
  color: #000000;
  background: rgba(247, 247, 247, 0.8); }
  @media screen and (max-width: 767px) {
    .menu-color-lgrey .menu .menu-container {
      background: #f7f7f7; } }

.menu-color-yellow .menu {
  color: #000000;
  background: rgba(243, 236, 140, 0.8); }
  @media screen and (max-width: 767px) {
    .menu-color-yellow .menu .menu-container {
      background: #f3ec8c; } }

.page-title {
  font-weight: 700;
  font-size: 4.1666664vw;
  line-height: .95;
  margin: 0;
  letter-spacing: -0.02em; }
  @media screen and (max-width: 767px) {
    .page-title {
      font-size: 8.3333328vw; } }
  .page-title--big {
    font-size: 9.99999936vw;
    font-weight: 900;
    letter-spacing: -0.02em; }
    @media screen and (max-width: 767px) {
      .page-title--big {
        font-size: 16.6666656vw; } }
  .page-title--features {
    font-size: 6.944444vw;
    font-weight: 900;
    letter-spacing: -0.02em; }
    @media screen and (max-width: 767px) {
      .page-title--features {
        font-size: 16.6666656vw; } }
  .page-title--yellow {
    color: #DE9B00; }

.l-text {
  font-weight: 900;
  font-size: 6.944444vw;
  line-height: .95;
  letter-spacing: -0.02em; }

.b-text {
  font-weight: 600;
  font-size: 3.33333312vw;
  line-height: 1; }
  .b-text--bold {
    font-weight: 700; }

.m-text {
  font-size: 2.0833332vw;
  font-weight: 500; }
  @media screen and (max-width: 767px) {
    .m-text {
      font-size: 4.1666664vw; } }

.h3 {
  font-size: 1.66666656vw;
  font-weight: 500; }
  @media screen and (max-width: 767px) {
    .h3 {
      font-size: 4.1666664vw; } }

.n-text {
  font-size: 1.66666656vw;
  font-weight: 400; }
  @media screen and (max-width: 767px) {
    .n-text {
      font-size: 4.1666664vw; } }

.s-text {
  font-size: 1.24999992vw; }

.section--cols {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  @media screen and (max-width: 767px) {
    .section--cols {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-flow: row wrap;
              flex-flow: row wrap; } }
  .section--cols .col {
    width: 49%; }
    @media screen and (max-width: 767px) {
      .section--cols .col {
        width: 100%; } }
    .section--cols .col .box {
      width: 100%; }

.info {
  max-width: 57%;
  margin: 0 auto;
  color: #9C99A2;
  font-size: 1.66666656vw;
  line-height: 1.25; }
  @media screen and (max-width: 767px) {
    .info {
      font-size: 4.1666664vw;
      max-width: 80%; } }
  .info h2 {
    font-weight: 700;
    font-size: 3.33333312vw;
    line-height: 1;
    color: #000000; }
    @media screen and (max-width: 767px) {
      .info h2 {
        font-size: 5.208333vw; } }
  .info--manifesto {
    padding: 8.3333328vw 0 6.5972218vw; }
  .info--pad {
    padding: 6.5972218vw 0 13.1944436vw; }
    @media screen and (max-width: 767px) {
      .info--pad {
        padding: 6.5972218vw 0 6.5972218vw; } }
  .info--big {
    margin: 6.5972218vw auto;
    font-size: 2.0833332vw;
    font-weight: 500; }
    @media screen and (max-width: 767px) {
      .info--big {
        font-size: 5.208333vw; } }
  .info--days {
    padding: 10.416666vw 0 13.888888vw; }
    @media screen and (max-width: 767px) {
      .info--days {
        padding: 10.416666vw 0 6.944444vw; } }
    .info--days p strong {
      color: #9C99A2; }
  .info--structure {
    padding: 6.5972218vw 0; }
  .info strong {
    color: #000000; }
  .info .info-icon {
    display: block;
    width: 9.58333272vw;
    height: 6.944444vw;
    color: #000000;
    margin-bottom: 2em; }
    @media screen and (max-width: 767px) {
      .info .info-icon {
        width: 23.9583318vw;
        height: 17.36111vw; } }
  .info__row {
    margin-top: 3em; }
  .info ul {
    margin: 0 0 1em 0;
    list-style: none;
    padding: 0;
    display: inline-block; }
    .info ul li {
      margin: 0 0 .5em 0;
      padding: .5em 0 0;
      position: relative;
      -webkit-box-sizing: border-box;
              box-sizing: border-box; }
      .info ul li:first-child:before {
        display: none; }
      .info ul li:before {
        content: "";
        width: 13.888888vw;
        height: 1px;
        background: #9C99A2;
        position: absolute;
        top: 0;
        left: 0;
        max-width: 100%; }

.button {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  text-decoration: none !important; }
  .button--submit, .button--apply {
    color: currentColor;
    border-radius: 1.3888888vw;
    border: 1px solid currentColor;
    font-size: 1.45833324vw;
    font-weight: 500;
    padding: 0 2.0833332vw;
    line-height: 2;
    -webkit-transition: color .3s ease, background .3s ease;
    transition: color .3s ease, background .3s ease; }
    @media screen and (max-width: 767px) {
      .button--submit, .button--apply {
        font-size: 4.37499972vw;
        font-weight: 500;
        padding: 0 5.208333vw;
        border-radius: 4.1666664vw; } }
  .button--apply {
    color: #ffffff;
    border-radius: 1.3888888vw;
    border: 1px solid #ffffff;
    font-size: 1.45833324vw;
    font-weight: 500;
    padding: 0 3.472222vw;
    line-height: 2;
    -webkit-transition: color .3s ease, background .3s ease;
    transition: color .3s ease, background .3s ease; }
    @media screen and (max-width: 767px) {
      .button--apply {
        border-radius: 4.1666664vw;
        padding: 0 6.944444vw; } }
  .button--more {
    color: currentColor;
    border-radius: 1.3888888vw;
    border: 1px solid currentColor;
    font-size: 1.45833324vw;
    font-weight: 500;
    padding: 0 2.0833332vw;
    line-height: 2;
    -webkit-transition: color .3s ease, background .3s ease;
    transition: color .3s ease, background .3s ease; }
    @media screen and (max-width: 767px) {
      .button--more {
        font-size: 4.37499972vw;
        font-weight: 500;
        padding: 0 5.208333vw;
        border-radius: 4.1666664vw; } }
  .button--blue:hover {
    background: #2E5C73;
    color: #AECBD9;
    border: 1px solid #2E5C73; }
  .button--green:hover {
    background: #5F9F75;
    color: #E2F4DE;
    border: 1px solid #5F9F75; }
  .button--pink:hover {
    background: #DA473C;
    color: #FF9F9D;
    border: 1px solid #DA473C; }
  .button--grey:hover {
    background: #F7F7F7;
    color: #9C99A2;
    border: 1px solid #F7F7F7; }
  .button--black:hover {
    background: #000000;
    color: #ffffff;
    border: 1px solid #000000; }
  .button--lgrey:hover {
    background: #9C99A2;
    color: #F7F7F7;
    border: 1px solid #9C99A2; }

.img-multiply {
  mix-blend-mode: multiply; }

.videos__player {
  width: 100%;
  height: 100vh;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 12000;
  background: rgba(0, 0, 0, 0.8);
  -webkit-transform: translate3d(100%, 0, 0);
          transform: translate3d(100%, 0, 0);
  padding: 3.472222vw; }
  .videos__player .player__container {
    width: 100%;
    height: 100%; }
  .videos__player .player__close {
    position: absolute;
    right: 0.6944444vw;
    top: 0.6944444vw;
    color: #ffffff;
    width: 2.0833332vw;
    height: 2.0833332vw; }
    @media screen and (max-width: 767px) {
      .videos__player .player__close {
        right: 10px;
        top: 10px;
        width: 30px;
        height: 30px; } }
    .videos__player .player__close:after {
      content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' d='M24 20.188l-8.315-8.209 8.2-8.282-3.697-3.697-8.212 8.318-8.31-8.203-3.666 3.666 8.321 8.24-8.206 8.313 3.666 3.666 8.237-8.318 8.285 8.203z'/%3E%3C/svg%3E");
      display: block;
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%; }
  .videos__player.is-active {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }

.underline {
  text-decoration: underline; }

.cover-404 {
  position: relative;
  padding: 12.8472214vw 13.888888vw 29.1666648vw; }
  @media screen and (max-width: 767px) {
    .cover-404 {
      padding: 16.4930545vw 10.416666vw 17.36111vw; } }
  .cover-404__content {
    position: relative;
    z-index: 1; }
    @media screen and (max-width: 767px) {
      .cover-404__content p {
        max-width: 43vw; } }
  .cover-404__image {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 55.5%;
    mix-blend-mode: darken; }
    @media screen and (max-width: 767px) {
      .cover-404__image {
        width: 57%; } }
  .cover-404 .page-title {
    margin-bottom: .5em; }
  .cover-404 p {
    font-size: 2.0833332vw;
    font-weight: 500; }
    @media screen and (max-width: 767px) {
      .cover-404 p {
        font-size: 4.1666664vw; } }

/*! Flickity v2.2.2
https://flickity.metafizzy.co
---------------------------------------------- */
.flickity-enabled {
  position: relative; }

.flickity-enabled:focus {
  outline: none; }

.flickity-viewport {
  overflow: hidden;
  position: relative;
  height: 100%;
  width: 100%; }

.flickity-slider {
  position: absolute;
  width: 100%;
  height: 100%; }

/* draggable */
.flickity-enabled.is-draggable {
  -webkit-tap-highlight-color: transparent;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.flickity-enabled.is-draggable .flickity-viewport {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab; }

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
  cursor: -webkit-grabbing;
  cursor: grabbing; }

/* ---- flickity-button ---- */
.flickity-button {
  position: absolute;
  background: rgba(255, 255, 255, 0.75);
  border: none;
  color: #333; }

.flickity-button:hover {
  background: white;
  cursor: pointer; }

.flickity-button:focus {
  outline: none;
  -webkit-box-shadow: 0 0 0 5px #19F;
          box-shadow: 0 0 0 5px #19F; }

.flickity-button:active {
  opacity: 0.6; }

.flickity-button:disabled {
  opacity: 0.3;
  cursor: auto;
  /* prevent disabled button from capturing pointer up event. #716 */
  pointer-events: none; }

.flickity-button-icon {
  fill: currentColor; }

/* ---- previous/next buttons ---- */
.flickity-prev-next-button {
  top: 50%;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  /* vertically center */
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%); }

.flickity-prev-next-button.previous {
  left: 10px; }

.flickity-prev-next-button.next {
  right: 10px; }

/* right to left */
.flickity-rtl .flickity-prev-next-button.previous {
  left: auto;
  right: 10px; }

.flickity-rtl .flickity-prev-next-button.next {
  right: auto;
  left: 10px; }

.flickity-prev-next-button .flickity-button-icon {
  position: absolute;
  left: 20%;
  top: 20%;
  width: 60%;
  height: 60%; }

/* ---- page dots ---- */
.flickity-page-dots {
  position: absolute;
  width: 100%;
  bottom: -25px;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1; }

.flickity-rtl .flickity-page-dots {
  direction: rtl; }

.flickity-page-dots .dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 8px;
  background: #333;
  border-radius: 50%;
  opacity: 0.25;
  cursor: pointer; }

.flickity-page-dots .dot.is-selected {
  opacity: 1; }

.hamburger {
  padding: 0 0;
  display: inline-block;
  cursor: pointer;
  position: fixed;
  color: currentColor;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0 0 3px;
  overflow: visible;
  position: fixed;
  right: 10px;
  z-index: 10000;
  -webkit-transition: opacity .71s ease, -webkit-transform .71s ease;
  transition: opacity .71s ease, -webkit-transform .71s ease;
  transition: transform .71s ease, opacity .71s ease;
  transition: transform .71s ease, opacity .71s ease, -webkit-transform .71s ease;
  display: none; }
  .has-menu .hamburger {
    visibility: visible; }
  @media screen and (max-width: 767px) {
    .hamburger {
      display: block;
      right: 10px;
      top: 2vw; } }

.hamburger-box {
  width: 4.99999968vw;
  height: 12px;
  display: inline-block;
  position: relative; }

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -1px; }
  .hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
    width: 4.99999968vw;
    height: 2px;
    background-color: currentColor;
    border-radius: 0px;
    position: absolute;
    -webkit-transition-property: width, opacity, background, -webkit-transform;
    transition-property: width, opacity, background, -webkit-transform;
    transition-property: transform, width, opacity, background;
    transition-property: transform, width, opacity, background, -webkit-transform;
    -webkit-transition-duration: 0.51s;
            transition-duration: 0.51s;
    -webkit-transition-timing-function: cubic-bezier(0.91, 0.01, 0.6, 0.99);
            transition-timing-function: cubic-bezier(0.91, 0.01, 0.6, 0.99); }
  .hamburger-inner::before, .hamburger-inner::after {
    content: "";
    display: block; }
  .hamburger-inner::before {
    top: -5px; }
  .hamburger-inner::after {
    bottom: -5px; }

.hamburger--squeeze .hamburger-inner {
  -webkit-transition-duration: 0.1s;
          transition-duration: 0.1s;
  -webkit-transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
          transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  -webkit-transition: background 0.5s ease 0.5s, -webkit-transform 0.1s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transition: background 0.5s ease 0.5s, -webkit-transform 0.1s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transition: transform 0.1s cubic-bezier(0.55, 0.055, 0.675, 0.19), background 0.5s ease 0.5s;
  transition: transform 0.1s cubic-bezier(0.55, 0.055, 0.675, 0.19), background 0.5s ease 0.5s, -webkit-transform 0.1s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--squeeze .hamburger-inner::before {
    -webkit-transition: top 0.1s 0.14s ease, opacity 0.1s ease, background 0.5s ease .5s;
    transition: top 0.1s 0.14s ease, opacity 0.1s ease, background 0.5s ease .5s; }
  .hamburger--squeeze .hamburger-inner::after {
    -webkit-transition: bottom 0.1s 0.14s ease, background 0.5s ease 0.5s, -webkit-transform 0.1s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: bottom 0.1s 0.14s ease, background 0.5s ease 0.5s, -webkit-transform 0.1s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: bottom 0.1s 0.14s ease, transform 0.1s cubic-bezier(0.55, 0.055, 0.675, 0.19), background 0.5s ease 0.5s;
    transition: bottom 0.1s 0.14s ease, transform 0.1s cubic-bezier(0.55, 0.055, 0.675, 0.19), background 0.5s ease 0.5s, -webkit-transform 0.1s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.has-menu .hamburger--squeeze .hamburger-inner {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-transition-delay: 0.14s;
          transition-delay: 0.14s;
  -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
          transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition: background 0.5s ease 0s, -webkit-transform 0.1s 0.14s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: background 0.5s ease 0s, -webkit-transform 0.1s 0.14s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: transform 0.1s 0.14s cubic-bezier(0.215, 0.61, 0.355, 1), background 0.5s ease 0s;
  transition: transform 0.1s 0.14s cubic-bezier(0.215, 0.61, 0.355, 1), background 0.5s ease 0s, -webkit-transform 0.1s 0.14s cubic-bezier(0.215, 0.61, 0.355, 1);
  width: 4.99999968vw; }
  .has-menu .hamburger--squeeze .hamburger-inner::before {
    top: 0;
    opacity: 0;
    -webkit-transition: top 0.1s ease, opacity 0.1s 0.14s ease, background 0.5s ease 0s;
    transition: top 0.1s ease, opacity 0.1s 0.14s ease, background 0.5s ease 0s; }
  .has-menu .hamburger--squeeze .hamburger-inner::after {
    bottom: 0;
    -webkit-transform: rotate(-90deg);
            transform: rotate(-90deg);
    -webkit-transition: bottom 0.1s ease, background 0.5s ease 0s, -webkit-transform 0.1s 0.14s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: bottom 0.1s ease, background 0.5s ease 0s, -webkit-transform 0.1s 0.14s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: bottom 0.1s ease, transform 0.1s 0.14s cubic-bezier(0.215, 0.61, 0.355, 1), background 0.5s ease 0s;
    transition: bottom 0.1s ease, transform 0.1s 0.14s cubic-bezier(0.215, 0.61, 0.355, 1), background 0.5s ease 0s, -webkit-transform 0.1s 0.14s cubic-bezier(0.215, 0.61, 0.355, 1); }

.menu {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  padding: 0 6.5972218vw;
  z-index: 11000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  @media screen and (max-width: 767px) {
    .menu {
      padding: 0 2.0833332vw;
      height: 10.416666vw; } }
  .menu .logo {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    width: 2.4305554vw;
    height: 2.4305554vw;
    position: relative;
    z-index: 3; }
    @media screen and (max-width: 767px) {
      .menu .logo {
        width: 7.2916662vw;
        height: 7.2916662vw; }
        .page-home .menu .logo {
          display: none; } }
  .menu .menu-container {
    width: 100%; }
    @media screen and (max-width: 767px) {
      .menu .menu-container {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        -webkit-transform: translate3d(100%, 0, 0);
                transform: translate3d(100%, 0, 0);
        -webkit-transition: -webkit-transform .5s ease;
        transition: -webkit-transform .5s ease;
        transition: transform .5s ease;
        transition: transform .5s ease, -webkit-transform .5s ease;
        overflow: auto; }
        .has-menu .menu .menu-container {
          -webkit-transform: translate3d(0, 0, 0);
                  transform: translate3d(0, 0, 0);
          -webkit-box-shadow: 0px 0 15px 0 rgba(0, 0, 0, 0.15);
                  box-shadow: 0px 0 15px 0 rgba(0, 0, 0, 0.15); } }
  .menu .main-menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    height: 4.1666664vw;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    margin-left: 6.5972218vw; }
    @media screen and (max-width: 767px) {
      .menu .main-menu {
        -webkit-box-pack: start;
            -ms-flex-pack: start;
                justify-content: flex-start;
        -webkit-box-align: start;
            -ms-flex-align: start;
                align-items: flex-start;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-flow: column;
                flex-flow: column;
        height: auto;
        margin-left: 0;
        padding-left: 10.416666vw;
        padding-top: 16.4930545vw;
        margin-bottom: 16.4930545vw; } }
    @media screen and (max-width: 767px) {
      .menu .main-menu #olm {
        width: 100%; }
        .menu .main-menu #olm:before {
          content: "+";
          display: block;
          font-size: 4.8611108vw;
          width: 4.8611108vw;
          height: 4.8611108vw;
          position: absolute;
          left: -4.1666664vw;
          top: 50%;
          -webkit-transform: translate(0, -50%);
                  transform: translate(0, -50%);
          line-height: 1; }
          .has-submenu .menu .main-menu #olm:before {
            content: "-"; }
        .has-submenu .menu .main-menu #olm {
          font-size: 6.5972218vw;
          opacity: 1; } }
    @media screen and (max-width: 767px) {
      .menu .main-menu #abs:before {
        content: "+";
        display: block;
        font-size: 4.8611108vw;
        width: 4.8611108vw;
        height: 4.8611108vw;
        position: absolute;
        left: -4.1666664vw;
        top: 50%;
        -webkit-transform: translate(0, -50%);
                transform: translate(0, -50%);
        line-height: 1; }
        .has-submenu-about .menu .main-menu #abs:before {
          content: "-"; }
      .has-submenu-about .menu .main-menu #abs {
        font-size: 6.5972218vw;
        opacity: 1; } }
    .menu .main-menu a {
      font-size: 1.11111104vw;
      position: relative;
      line-height: 2;
      display: inline-block; }
      @media screen and (max-width: 767px) {
        .menu .main-menu a {
          font-size: 6.5972218vw;
          font-weight: 700; }
          .has-submenu .menu .main-menu a {
            font-size: 4.1666664vw;
            opacity: .75; }
          .has-submenu-about .menu .main-menu a {
            font-size: 4.1666664vw;
            opacity: .75; } }
      .menu .main-menu a:hover, .menu .main-menu a.active {
        color: currentColor; }
        .menu .main-menu a:hover:after, .menu .main-menu a.active:after {
          opacity: 1;
          -webkit-transform: scaleX(1);
                  transform: scaleX(1); }
          @media screen and (max-width: 767px) {
            .menu .main-menu a:hover:after, .menu .main-menu a.active:after {
              display: none; } }
      .menu .main-menu a:after {
        content: '';
        display: block;
        position: absolute;
        left: 0;
        top: 100%;
        height: 1px;
        width: 100%;
        background: currentColor;
        opacity: 0;
        -webkit-transform: scaleX(0);
                transform: scaleX(0);
        -webkit-transition: opacity .3s ease, -webkit-transform .3s ease;
        transition: opacity .3s ease, -webkit-transform .3s ease;
        transition: opacity .3s ease, transform .3s ease;
        transition: opacity .3s ease, transform .3s ease, -webkit-transform .3s ease; }

.subnav {
  position: fixed;
  background: #9C99A2;
  color: #ffffff;
  left: 0;
  top: 0;
  width: 100%;
  -webkit-box-shadow: 0px 2px 15px 0 rgba(0, 0, 0, 0.15);
          box-shadow: 0px 2px 15px 0 rgba(0, 0, 0, 0.15);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column wrap;
          flex-flow: column wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  height: 32.6388868vw;
  z-index: 9999;
  -webkit-transform: translate3d(0, -100%, 0);
          transform: translate3d(0, -100%, 0);
  -webkit-transition: visibility .5s ease, -webkit-transform .5s ease;
  transition: visibility .5s ease, -webkit-transform .5s ease;
  transition: transform .5s ease, visibility .5s ease;
  transition: transform .5s ease, visibility .5s ease, -webkit-transform .5s ease;
  line-height: 2;
  font-size: 2.0833332vw;
  padding: 6.5972218vw 11.8055548vw 6.5972218vw 15.2777768vw;
  visibility: hidden; }
  @media screen and (max-width: 767px) {
    .subnav {
      display: none; } }
  .has-submenu .subnav {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
    visibility: visible; }
  .subnav a {
    margin-bottom: 0.3472222vw;
    position: relative; }
    .subnav a:hover:after {
      opacity: 1; }
    .subnav a:after {
      content: '';
      display: block;
      position: absolute;
      left: 0;
      top: 100%;
      height: 1px;
      width: 100%;
      background: currentColor;
      opacity: 0;
      -webkit-transition: opacity .3s ease, background .3s ease;
      transition: opacity .3s ease, background .3s ease; }
  .subnav__image {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 28%; }
    @media screen and (max-width: 767px) {
      .subnav__image {
        width: 70%; } }

.subnav-about {
  position: fixed;
  background: #9C99A2;
  color: #ffffff;
  left: 0;
  top: 0;
  width: 100%;
  -webkit-box-shadow: 0px 2px 15px 0 rgba(0, 0, 0, 0.15);
          box-shadow: 0px 2px 15px 0 rgba(0, 0, 0, 0.15);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column wrap;
          flex-flow: column wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  height: 32.6388868vw;
  z-index: 9999;
  -webkit-transform: translate3d(0, -100%, 0);
          transform: translate3d(0, -100%, 0);
  -webkit-transition: visibility .5s ease, -webkit-transform .5s ease;
  transition: visibility .5s ease, -webkit-transform .5s ease;
  transition: transform .5s ease, visibility .5s ease;
  transition: transform .5s ease, visibility .5s ease, -webkit-transform .5s ease;
  line-height: 2;
  font-size: 2.0833332vw;
  padding: 6.5972218vw 11.8055548vw 1.736111vw 15.2777768vw;
  visibility: hidden; }
  @media screen and (max-width: 767px) {
    .subnav-about {
      display: none; } }
  .has-submenu-about .subnav-about {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
    visibility: visible; }
  .subnav-about a {
    margin-bottom: 0.3472222vw;
    position: relative; }
    .subnav-about a:hover:after {
      opacity: 1; }
    .subnav-about a:after {
      content: '';
      display: block;
      position: absolute;
      left: 0;
      top: 100%;
      height: 1px;
      width: 100%;
      background: currentColor;
      opacity: 0;
      -webkit-transition: opacity .3s ease, background .3s ease;
      transition: opacity .3s ease, background .3s ease; }
  .subnav-about__image {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 28%; }
    @media screen and (max-width: 767px) {
      .subnav-about__image {
        width: 70%; } }

.subnav-fees {
  position: fixed;
  background: #9C99A2;
  color: #ffffff;
  left: 0;
  top: 0;
  width: 100%;
  -webkit-box-shadow: 0px 2px 15px 0 rgba(0, 0, 0, 0.15);
          box-shadow: 0px 2px 15px 0 rgba(0, 0, 0, 0.15);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column wrap;
          flex-flow: column wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  height: 32.6388868vw;
  z-index: 9999;
  -webkit-transform: translate3d(0, -100%, 0);
          transform: translate3d(0, -100%, 0);
  -webkit-transition: visibility .5s ease, -webkit-transform .5s ease;
  transition: visibility .5s ease, -webkit-transform .5s ease;
  transition: transform .5s ease, visibility .5s ease;
  transition: transform .5s ease, visibility .5s ease, -webkit-transform .5s ease;
  line-height: 2;
  font-size: 2.0833332vw;
  padding: 6.5972218vw 11.8055548vw 1.736111vw 15.2777768vw;
  visibility: hidden; }
  @media screen and (max-width: 767px) {
    .subnav-fees {
      display: none; } }
  .has-submenu-fees .subnav-fees {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
    visibility: visible; }
  .subnav-fees a {
    margin-bottom: 0.3472222vw;
    position: relative; }
    .subnav-fees a:hover:after {
      opacity: 1; }
    .subnav-fees a:after {
      content: '';
      display: block;
      position: absolute;
      left: 0;
      top: 100%;
      height: 1px;
      width: 100%;
      background: currentColor;
      opacity: 0;
      -webkit-transition: opacity .3s ease, background .3s ease;
      transition: opacity .3s ease, background .3s ease; }
  .subnav-fees__image {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 28%; }
    @media screen and (max-width: 767px) {
      .subnav-fees__image {
        width: 70%; } }

.menu .main-menu .mobile-subnav a, .menu .main-menu .mobile-subnav-about a, .menu .main-menu .mobile-subnav-fees a {
  line-height: 1.1;
  margin-bottom: 1em;
  font-weight: 400;
  font-size: 5.208333vw;
  opacity: 1; }

.mobile-subnav {
  display: none;
  padding-top: 1em;
  line-height: 1.1; }
  @media screen and (max-width: 767px) {
    .has-submenu .mobile-subnav {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-flow: column;
              flex-flow: column; } }

.mobile-subnav-about {
  display: none;
  padding-top: 1em;
  line-height: 1.1; }
  @media screen and (max-width: 767px) {
    .has-submenu-about .mobile-subnav-about {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-flow: column;
              flex-flow: column; } }

.mobile-subnav-fees {
  display: none;
  padding-top: 1em;
  line-height: 1.1; }
  @media screen and (max-width: 767px) {
    .has-submenu-fees .mobile-subnav-fees {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-flow: column;
              flex-flow: column; } }

.kinder {
  position: absolute;
  right: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  pointer-events: none; }
  .kinder__tri {
    width: 10.0694438vw;
    position: absolute;
    left: 72.5%;
    top: 43.1%;
    -webkit-transform: translate3d(0, -200%, 0);
            transform: translate3d(0, -200%, 0);
    -webkit-transition: opacity .1s ease, -webkit-transform .51s ease;
    transition: opacity .1s ease, -webkit-transform .51s ease;
    transition: transform .51s ease, opacity .1s ease;
    transition: transform .51s ease, opacity .1s ease, -webkit-transform .51s ease;
    opacity: 0; }
    .has-submenu .kinder__tri {
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
      -webkit-transition-delay: .6s;
              transition-delay: .6s;
      opacity: 1; }
    .has-submenu-about .kinder__tri {
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
      -webkit-transition-delay: .6s;
              transition-delay: .6s;
      opacity: 1; }
    .has-submenu-fees .kinder__tri {
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
      -webkit-transition-delay: .6s;
              transition-delay: .6s;
      opacity: 1; }
  .kinder__rec {
    width: 10.0694438vw;
    position: absolute;
    left: 85.75%;
    top: 32.2%;
    -webkit-transform: translate3d(0, -200%, 0);
            transform: translate3d(0, -200%, 0);
    -webkit-transition: opacity .1s ease, -webkit-transform .51s ease;
    transition: opacity .1s ease, -webkit-transform .51s ease;
    transition: transform .51s ease, opacity .1s ease;
    transition: transform .51s ease, opacity .1s ease, -webkit-transform .51s ease;
    opacity: 0; }
    .has-submenu .kinder__rec {
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
      -webkit-transition-delay: .5s;
              transition-delay: .5s;
      opacity: 1; }
    .has-submenu-about .kinder__rec {
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
      -webkit-transition-delay: .5s;
              transition-delay: .5s;
      opacity: 1; }
    .has-submenu-fees .kinder__rec {
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
      -webkit-transition-delay: .5s;
              transition-delay: .5s;
      opacity: 1; }
  .kinder__com {
    width: 20.1388876vw;
    position: absolute;
    left: 72%;
    bottom: 0%;
    -webkit-transform: translate3d(0, -200%, 0);
            transform: translate3d(0, -200%, 0);
    -webkit-transition: opacity .1s ease, -webkit-transform .51s ease;
    transition: opacity .1s ease, -webkit-transform .51s ease;
    transition: transform .51s ease, opacity .1s ease;
    transition: transform .51s ease, opacity .1s ease, -webkit-transform .51s ease;
    opacity: 0; }
    .has-submenu .kinder__com {
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
      -webkit-transition-delay: .4s;
              transition-delay: .4s;
      opacity: 1; }
    .has-submenu-about .kinder__com {
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
      -webkit-transition-delay: .4s;
              transition-delay: .4s;
      opacity: 1; }
    .has-submenu-fees .kinder__com {
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
      -webkit-transition-delay: .4s;
              transition-delay: .4s;
      opacity: 1; }
  .kinder__ova {
    width: 9.30555496vw;
    position: absolute;
    left: 88.75%;
    bottom: 0%;
    -webkit-transform: translate3d(0, -200%, 0);
            transform: translate3d(0, -200%, 0);
    -webkit-transition: opacity .1s ease, -webkit-transform .51s ease;
    transition: opacity .1s ease, -webkit-transform .51s ease;
    transition: transform .51s ease, opacity .1s ease;
    transition: transform .51s ease, opacity .1s ease, -webkit-transform .51s ease;
    opacity: 0; }
    .has-submenu .kinder__ova {
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
      -webkit-transition-delay: .2s;
              transition-delay: .2s;
      opacity: 1; }
    .has-submenu-about .kinder__ova {
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
      -webkit-transition-delay: .2s;
              transition-delay: .2s;
      opacity: 1; }
    .has-submenu-fees .kinder__ova {
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
      -webkit-transition-delay: .2s;
              transition-delay: .2s;
      opacity: 1; }

.cover {
  padding: 9.0277772vw 0 0;
  position: relative;
  color: #5F9F75;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  @media screen and (max-width: 767px) {
    .cover {
      padding: 16.4930545vw 0 0;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-flow: column;
              flex-flow: column; } }
  .cover__content {
    width: 55%;
    position: relative;
    z-index: 1;
    padding-left: 6.5972218vw; }
    @media screen and (max-width: 767px) {
      .cover__content {
        width: 60%;
        padding-bottom: 10vw; } }
  .cover__calendar {
    padding-top: 4.1666664vw; }
    @media screen and (max-width: 767px) {
      .cover__calendar {
        padding-top: 16.6666656vw;
        margin-top: 4.1666664vw; } }
    .cover__calendar .calendar {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: flex-start;
      -webkit-box-pack: start;
          -ms-flex-pack: start;
              justify-content: flex-start;
      margin-bottom: 2.7777776vw; }
      .cover__calendar .calendar--last {
        margin-bottom: 0; }
      @media screen and (max-width: 767px) {
        .cover__calendar .calendar {
          display: block;
          margin-bottom: 6.944444vw; }
          .cover__calendar .calendar--last {
            margin-bottom: 0; } }
      .cover__calendar .calendar__title {
        font-size: 1.24999992vw;
        margin: 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: start;
            -ms-flex-pack: start;
                justify-content: flex-start;
        width: 17.36111vw;
        padding-right: 1.3888888vw;
        margin-top: 1.2152777vw; }
        @media screen and (max-width: 767px) {
          .cover__calendar .calendar__title {
            font-size: 3.1249998vw;
            width: 100%;
            margin-bottom: 1.2152777vw; } }
        .cover__calendar .calendar__title span {
          display: block;
          margin-right: 0.6944444vw;
          line-height: 1; }
        .cover__calendar .calendar__title:after {
          content: "";
          display: block;
          height: 1px;
          -webkit-box-flex: 1;
              -ms-flex: 1;
                  flex: 1;
          background: #5F9F75; }
          @media screen and (max-width: 767px) {
            .cover__calendar .calendar__title:after {
              display: none; } }
        .cover__calendar .calendar__title .p3 {
          color: #ddaf3b; }
        .cover__calendar .calendar__title .rbg {
          background: #FF0000;
          display: -webkit-inline-box;
          display: -ms-inline-flexbox;
          display: inline-flex;
          padding: .3em .5em;
          color: #ffffff;
          border-radius: 1.3888888vw;
          margin-left: -.5em;
          margin-top: .2em;
          font-weight: 500;
          -webkit-animation: blink 1s linear 6;
                  animation: blink 1s linear 6; }
          @media screen and (max-width: 767px) {
            .cover__calendar .calendar__title .rbg {
              border-radius: 3.472222vw;
              padding: .4em .5em; } }
        .cover__calendar .calendar__title--rows {
          display: block;
          position: relative;
          margin-top: -2.5em; }
          @media screen and (max-width: 767px) {
            .cover__calendar .calendar__title--rows {
              margin-top: 0; } }
          .cover__calendar .calendar__title--rows:after {
            content: "";
            display: block;
            height: 1px;
            width: 6vw;
            right: 1vw;
            top: 4em;
            background: #5F9F75;
            position: absolute; }
            @media screen and (max-width: 767px) {
              .cover__calendar .calendar__title--rows:after {
                display: none; } }
        .cover__calendar .calendar__title--top {
          margin-top: -1em; }
          .cover__calendar .calendar__title--top:after {
            top: 2em; }
      .cover__calendar .calendar__description {
        font-size: 2.49999984vw;
        margin: 0;
        line-height: 1.25; }
        @media screen and (max-width: 767px) {
          .cover__calendar .calendar__description {
            font-size: 4.8611108vw; } }
        .cover__calendar .calendar__description--desktop {
          display: block; }
          @media screen and (max-width: 767px) {
            .cover__calendar .calendar__description--desktop {
              display: none; } }
        .cover__calendar .calendar__description--mobile {
          display: none; }
          @media screen and (max-width: 767px) {
            .cover__calendar .calendar__description--mobile {
              display: block;
              margin-bottom: .5em; } }
      .cover__calendar .calendar__button {
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        padding: 0.6944444vw 2.0833332vw;
        border-radius: 3.472222vw;
        background: linear-gradient(240deg, #f1cb00 0%, #de9b00 100%);
        color: #E2F4DE;
        margin-top: 1.0416666vw;
        margin-left: -2px;
        cursor: pointer;
        -webkit-transition: background .3s ease;
        transition: background .3s ease;
        font-size: 1.45833324vw; }
        .cover__calendar .calendar__button:hover {
          background: linear-gradient(240deg, #f1cb00 0%, #f1cb00 100%); }
        @media screen and (max-width: 767px) {
          .cover__calendar .calendar__button {
            padding: 1.736111vw 5.208333vw;
            border-radius: 8.680555vw;
            margin-top: 2.6041665vw;
            font-size: 2.91666648vw; } }
  .cover__image {
    width: 42.3%;
    -ms-flex-item-align: end;
        align-self: flex-end; }
    @media screen and (max-width: 767px) {
      .cover__image {
        width: 70%;
        position: absolute;
        height: 100%;
        right: -15%;
        top: 0;
        overflow: hidden; } }
    .cover__image img {
      margin-top: -8.88888832vw; }
      @media screen and (max-width: 767px) {
        .cover__image img {
          position: absolute;
          right: -6%;
          bottom: 0;
          width: 100%; } }
    @media screen and (max-width: 767px) {
      .cover__image {
        margin-top: auto; } }
  @media screen and (max-width: 767px) {
    .cover.hp-cover {
      -webkit-box-align: stretch;
          -ms-flex-align: stretch;
              align-items: stretch;
      overflow: hidden; } }
  .cover.hp-cover .clc-logo {
    width: 13.61111024vw;
    height: 6.2499996vw;
    display: block;
    margin-bottom: 3.8194442vw;
    color: #5F9F75; }
    @media screen and (max-width: 767px) {
      .cover.hp-cover .clc-logo {
        width: 34.0277756vw;
        height: 15.624999vw; } }
  .cover.hp-cover .page-title {
    margin: 0; }
    @media screen and (max-width: 767px) {
      .cover.hp-cover .page-title {
        font-size: 12.4999992vw; } }
  .cover.hp-cover .subtitle {
    color: #000000;
    margin-top: 1em; }
    .cover.hp-cover .subtitle .brmobile {
      display: none; }
    @media screen and (max-width: 767px) {
      .cover.hp-cover .subtitle {
        max-width: 95%; }
        .cover.hp-cover .subtitle .brmobile {
          display: block; } }

@-webkit-keyframes blink {
  0% {
    background: #ddaf3b; }
  49.9% {
    background: #ddaf3b; }
  50% {
    background: #ff0000; }
  100% {
    background: #ff0000; } }

@keyframes blink {
  0% {
    background: #ddaf3b; }
  49.9% {
    background: #ddaf3b; }
  50% {
    background: #ff0000; }
  100% {
    background: #ff0000; } }

.neasc-wrap {
  display: none; }
  @media screen and (max-width: 767px) {
    .neasc-wrap {
      padding: 0 4.3402775vw;
      display: block;
      margin: 1em 0; } }

.neasc {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  background-color: #FCF6F0;
  color: #5F9F75;
  border-radius: 2.0833332vw;
  padding: 1em 2em; }
  .neasc--desktop {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-left: -2.4305554vw; }
    @media screen and (max-width: 767px) {
      .neasc--desktop {
        display: none; } }
  .neasc--mobile {
    display: none; }
    @media screen and (max-width: 767px) {
      .neasc--mobile {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-flow: column;
                flex-flow: column; } }
  @media screen and (max-width: 767px) {
    .neasc {
      border-radius: 3.472222vw; } }
  .neasc__image {
    width: 30%;
    padding: 3% 6% 3% 0; }
    @media screen and (max-width: 767px) {
      .neasc__image {
        width: 60%; } }
  .neasc__text {
    width: 70%;
    padding: 3% 0 3% 3%;
    font-size: 1.18055548vw; }
    @media screen and (max-width: 767px) {
      .neasc__text {
        width: 100%;
        font-size: 2.9513887vw;
        padding: 3%; } }
    .neasc__text p {
      color: #9C99A2;
      margin-top: .5em; }
  .neasc h2 {
    font-size: 2.22222208vw;
    margin: 0;
    line-height: 1.25; }
    @media screen and (max-width: 767px) {
      .neasc h2 {
        font-size: 4.8611108vw; } }

.homebanner {
  padding: 0 4.1666664vw;
  margin-bottom: 1.3888888vw; }
  @media screen and (max-width: 767px) {
    .homebanner {
      padding: 0;
      margin-bottom: 3.472222vw; } }

.grid {
  display: grid;
  grid-template-columns: 2fr 1fr;
  grid-template-rows: 1fr 2fr;
  -webkit-column-gap: 1.3888888vw;
     -moz-column-gap: 1.3888888vw;
          column-gap: 1.3888888vw;
  row-gap: 1.3888888vw;
  margin-bottom: 1.3888888vw;
  padding: 0 4.1666664vw;
  grid-template-areas: "a b" "a c"; }
  @media screen and (max-width: 767px) {
    .grid {
      -webkit-column-gap: 3.472222vw;
         -moz-column-gap: 3.472222vw;
              column-gap: 3.472222vw;
      row-gap: 3.472222vw;
      margin-bottom: 3.472222vw;
      padding: 0 4.3402775vw; } }
  .grid--hp {
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-template-rows: repeat(8, 1fr);
    grid-template-areas: "k k k k" "k k k k" "e e j j" "e e j j" "c c d d" "c c d d" "f g l l" "h i l l" "m m n n"; }
    @media screen and (max-width: 767px) {
      .grid--hp {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: repeat(14, 1fr);
        grid-template-areas: "k k" "k k" "j j" "j j" "c c" "c c" "d d" "d d" "l l" "l l" "e e" "e e" "f g" "h i" "m m" "n n"; } }
  .grid .card--a {
    grid-area: a; }
  .grid .card--b {
    grid-area: b; }
  .grid .card--c {
    grid-area: c; }
  .grid .card--d {
    grid-area: d; }
  .grid .card--e {
    grid-area: e; }
  .grid .card--f {
    grid-area: f; }
  .grid .card--g {
    grid-area: g; }
  .grid .card--h {
    grid-area: h; }
  .grid .card--i {
    grid-area: i; }
  .grid .card--j {
    grid-area: j; }
  .grid .card--k {
    grid-area: k; }
  .grid .card--l {
    grid-area: l; }
  .grid .card--m {
    grid-area: m; }
  .grid .card--n {
    grid-area: n; }

.card {
  text-align: center;
  position: relative;
  background: #FCF6F0;
  border-radius: 2.0833332vw;
  overflow: hidden; }
  @media screen and (max-width: 767px) {
    .card {
      border-radius: 3.472222vw; } }
  .card .button {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    padding: 0.6944444vw 2.0833332vw;
    border-radius: 3.472222vw;
    background: linear-gradient(240deg, #f1cb00 0%, #de9b00 100%);
    color: #E2F4DE;
    cursor: pointer;
    -webkit-transition: background .3s ease;
    transition: background .3s ease;
    margin-top: .75em;
    font-size: 1.45833324vw; }
    .card .button:hover {
      background: linear-gradient(240deg, #f1cb00 0%, #f1cb00 100%); }
    @media screen and (max-width: 767px) {
      .card .button {
        padding: 1.736111vw 5.208333vw;
        border-radius: 8.680555vw;
        margin-top: 2.6041665vw;
        font-size: 2.91666648vw; } }
  .card h3 {
    font-size: 2.49999984vw;
    font-weight: 300;
    line-height: 1.1;
    margin: 0; }
    @media screen and (max-width: 767px) {
      .card h3 {
        font-size: 4.58333304vw;
        margin: 0; } }
  .card--slide {
    position: relative; }
    .card--slide .slide-image {
      position: absolute;
      left: 0;
      top: 0;
      right: 0;
      bottom: 0;
      opacity: 0;
      z-index: 1;
      -webkit-transition: opacity .5s ease;
      transition: opacity .5s ease; }
      .card--slide .slide-image.is-visible {
        opacity: 1;
        z-index: 2; }
  .card--text {
    padding: 14% 10% 0; }
    .card--text p {
      font-size: 1.3888888vw;
      font-weight: 500;
      color: #9C99A2;
      margin: 0 0 2em 0; }
      @media screen and (max-width: 767px) {
        .card--text p {
          font-size: 2.7777776vw; } }
  .card--title {
    background: none;
    text-align: left;
    padding: 0 1.736111vw 0 3.9930553vw; }
    .card--title h2 {
      font-size: 4.1666664vw;
      font-weight: 700; }
      @media screen and (max-width: 767px) {
        .card--title h2 {
          font-size: 8.3333328vw; } }
  .card--image {
    padding: 15% 22% 0; }
    .card--image .year25 {
      margin-bottom: 2.7777776vw; }
  .card--logos {
    padding: 15% 0 0; }
    .card--logos p {
      font-size: 1.3888888vw;
      font-weight: 500;
      color: #9C99A2;
      margin: 0; }
      @media screen and (max-width: 767px) {
        .card--logos p {
          font-size: 2.7777776vw; } }
    .card--logos h2 {
      font-size: 3.88888864vw;
      font-weight: 300;
      margin-top: 0;
      margin-bottom: 4.1666664vw; }
      @media screen and (max-width: 767px) {
        .card--logos h2 {
          font-size: 7.77777728vw; } }
  .card--left .card__content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    color: #9C99A2;
    text-align: left;
    padding: 8% 25% 12% 8%; }
    .card--left .card__content .video-button {
      border: 1px solid #9C99A2;
      color: #9C99A2;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
      .card--left .card__content .video-button .playbut {
        display: inline-block;
        width: 1.3888888vw;
        height: 1.3888888vw;
        margin-left: 0.6944444vw; }
        @media screen and (max-width: 767px) {
          .card--left .card__content .video-button .playbut {
            width: 2.7777776vw;
            height: 2.7777776vw;
            margin-left: 1.3888888vw; } }
      .card--left .card__content .video-button:hover {
        background: #9C99A2;
        color: #000000; }
  .card__content {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    color: #ffffff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    padding-bottom: 12%; }
    .card__content--h h3 {
      position: absolute;
      left: 50%;
      top: 50%;
      -webkit-transform: translate3d(-50%, -50%, 0);
              transform: translate3d(-50%, -50%, 0); }
    .card__content h3 {
      font-size: 3.88888864vw;
      font-weight: 300;
      margin-bottom: .75em; }
      @media screen and (max-width: 767px) {
        .card__content h3 {
          font-size: 7.77777728vw; } }
    .card__content .video-button {
      display: -webkit-inline-box;
      display: -ms-inline-flexbox;
      display: inline-flex;
      border-radius: 3.472222vw;
      border: 1px solid #ffffff;
      padding: 0.6944444vw 2.0833332vw 0.6944444vw 2.7777776vw;
      font-size: 1.45833324vw;
      font-weight: 500;
      -webkit-transition: background .5s ease;
      transition: background .5s ease;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
      .card__content .video-button .playbut {
        display: inline-block;
        width: 1.3888888vw;
        height: 1.3888888vw;
        margin-left: 0.6944444vw;
        margin-top: 0.20833332vw;
        line-height: 1; }
        @media screen and (max-width: 767px) {
          .card__content .video-button .playbut {
            width: 3.472222vw;
            height: 3.472222vw;
            margin-left: 1.3888888vw;
            margin-top: 0; } }
      .card__content .video-button:hover {
        background: #ffffff;
        color: #000000; }
      @media screen and (max-width: 767px) {
        .card__content .video-button {
          font-size: 2.91666648vw;
          padding: 1.736111vw 5.208333vw 1.736111vw 6.944444vw; } }
  .card .card__image {
    width: 100%;
    height: 100%; }
    .card .card__image img, .card .card__image video {
      width: 100%;
      height: 100%;
      -o-object-fit: cover;
         object-fit: cover; }
  .card--banner {
    height: 44vw; }
    @media screen and (max-width: 767px) {
      .card--banner {
        height: 90vw;
        border-radius: 3.472222vw; } }
    .card--banner .card__content {
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      padding-bottom: 0; }
      @media screen and (max-width: 767px) {
        .card--banner .card__content {
          padding: 8.3333328vw; }
          .card--banner .card__content br {
            display: none; } }
    .card--banner .card__image {
      overflow: hidden;
      position: relative;
      height: 44vw;
      border-radius: 2.0833332vw; }
      @media screen and (max-width: 767px) {
        .card--banner .card__image {
          border-radius: 0;
          height: 90vw; } }
      .card--banner .card__image img, .card--banner .card__image video {
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
           object-fit: cover; }
  .card__logos {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 0 12%;
    margin-top: 4.8611108vw; }
    @media screen and (max-width: 767px) {
      .card__logos {
        margin-top: 9.7222216vw;
        padding: 0 5%; } }
    .card__logos figure:first-child {
      border-right: 1px solid #9C99A2; }
  .card__button {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    padding: 0.6944444vw 2.0833332vw;
    border-radius: 3.472222vw;
    background: linear-gradient(240deg, #f1cb00 0%, #de9b00 100%);
    color: #E2F4DE;
    margin-top: 1.0416666vw;
    cursor: pointer;
    -webkit-transition: background .3s ease;
    transition: background .3s ease; }
    .card__button:hover {
      background: linear-gradient(240deg, #f1cb00 0%, #f1cb00 100%); }
    @media screen and (max-width: 767px) {
      .card__button {
        font-size: 3.6458331vw;
        padding: 1.736111vw 5.208333vw; } }

.bus-wrapper {
  background: #E2F4DE;
  padding: 0 15.2777768vw 0;
  text-align: left; }
  @media screen and (max-width: 767px) {
    .bus-wrapper {
      padding: 0 10.416666vw 0; } }

.normal {
  font-weight: 400; }

.card--n .card__content {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: start;
  margin-right: 40%;
  margin-top: 50px;
  margin-left: 40px; }
  @media screen and (max-width: 767px) {
    .card--n .card__content {
      margin-top: 0px;
      margin-left: 0px; } }

.page-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  width: 100%; }

.page-columns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: flex-strt;
      -ms-flex-align: flex-strt;
          align-items: flex-strt;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap; }
  .page-columns .page-column {
    width: 49%; }
    .page-columns .page-column .box {
      width: 100%;
      margin-bottom: 1.66666656vw; }

.box {
  display: block;
  border-radius: 2.0833332vw;
  text-align: left;
  position: relative;
  padding: 4.8611108vw 4.5138886vw;
  width: 49%;
  margin-bottom: 1.736111vw; }
  @media screen and (max-width: 767px) {
    .box {
      width: 100%;
      border-radius: 6.2499996vw;
      padding: 7.2916662vw 7.2916662vw;
      margin-bottom: 4.3402775vw; } }
  .box h3 {
    color: #000000; }
  .box--color-steel {
    background: #085E59; }
  .box--color-dark {
    background: #005442; }
  .box--color-blue {
    background: #AECBD9;
    color: #2E5C73; }
    .box--color-blue h3 {
      color: #2E5C73; }
  .box--color-pink {
    background: #FF9F9D;
    color: #ffffff; }
    .box--color-pink h3 {
      color: #DA473C; }
  .box--text-green h3 {
    color: #5F9F75; }
  .box--color-green {
    background: #E2F4DE;
    color: #5F9F75; }
    .box--color-green h3 {
      color: #5F9F75; }
  .box--color-grey {
    background: #9C99A2;
    color: #ffffff; }
    .box--color-grey h3 {
      color: #000000; }
  .box--full {
    width: 100%; }
    @media screen and (max-width: 767px) {
      .box--full {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
            -ms-flex-flow: row-reverse wrap;
                flex-flow: row-reverse wrap; } }
  .box--flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap; }
    @media screen and (max-width: 767px) {
      .box--flex {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
            -ms-flex-flow: column-reverse wrap;
                flex-flow: column-reverse wrap; } }
  .box--nomarginb {
    margin-bottom: 0; }
  .box--nomargin {
    margin: 0; }
  .box--nopaddingb {
    padding-bottom: 0.3472222vw; }
    @media screen and (max-width: 767px) {
      .box--nopaddingb {
        padding-bottom: 0.6944444vw; } }
  .box--nopaddingtop {
    padding-top: 0; }
    @media screen and (max-width: 767px) {
      .box--nopaddingtop {
        padding-top: 7.2916662vw; } }
  .box a {
    text-decoration: underline; }
  .box h3 {
    font-size: 3.33333312vw;
    font-weight: 600;
    line-height: 1;
    margin-top: 0;
    margin-bottom: .5em; }
    @media screen and (max-width: 767px) {
      .box h3 {
        font-size: 7.333332864vw; } }
  .box__text {
    width: 49%;
    padding-right: 4.1666664vw; }
    @media screen and (max-width: 767px) {
      .box__text {
        width: 100%;
        padding-right: 0; } }
  .box__illustration {
    width: 50%; }
    @media screen and (max-width: 767px) {
      .box__illustration {
        width: 100%;
        padding-bottom: 10.416666vw; } }

.minusbox {
  pointer-events: none; }
  .minusbox img {
    -webkit-transform: translateY(-10%);
            transform: translateY(-10%); }

.team-header {
  text-align: center;
  padding-top: 6.5972218vw; }
  @media screen and (max-width: 767px) {
    .team-header {
      padding: 16.4930545vw 10.416666vw 0; } }
  .team-header p {
    max-width: 63%;
    color: #2E5C73;
    font-weight: 500;
    font-size: 2.0833332vw;
    margin: 4vw auto 8vw; }
    @media screen and (max-width: 767px) {
      .team-header p {
        font-size: 5.208333vw;
        max-width: 90%;
        margin: 15vw auto 20vw; } }

.dev-team {
  padding-top: 3em; }
  .dev-team__header {
    text-align: center;
    margin-bottom: 4em; }
    @media screen and (max-width: 767px) {
      .dev-team__header .page-title br {
        display: none; } }

.dev {
  padding: 0 2.6041665vw;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-template-rows: repeat(2, 1fr);
  -webkit-column-gap: 1.3888888vw;
     -moz-column-gap: 1.3888888vw;
          column-gap: 1.3888888vw;
  row-gap: 1.3888888vw;
  margin-bottom: 1.3888888vw;
  grid-template-areas: "i a b c" "d f g h"; }
  @media screen and (max-width: 767px) {
    .dev {
      padding: 0 3.472222vw;
      -webkit-column-gap: 3.472222vw;
         -moz-column-gap: 3.472222vw;
              column-gap: 3.472222vw;
      row-gap: 3.472222vw;
      margin-bottom: 3.472222vw;
      grid-template-columns: repeat(1, 1fr);
      grid-template-rows: repeat(9, 1fr);
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-flow: row wrap;
              flex-flow: row wrap;
      grid-template-areas: "i" "a" "b" "c" "d" "e" "f" "g" "h"; } }
  .dev__card {
    position: relative;
    overflow: hidden;
    border-radius: 2.0833332vw;
    cursor: pointer; }
    .dev__card--a {
      grid-area: a; }
    .dev__card--b {
      grid-area: b; }
    .dev__card--c {
      grid-area: c; }
    .dev__card--d {
      grid-area: d; }
    .dev__card--e {
      grid-area: e; }
    .dev__card--f {
      grid-area: f; }
    .dev__card--g {
      grid-area: g; }
    .dev__card--h {
      grid-area: h; }
    .dev__card--i {
      grid-area: i; }
    .dev__card--j {
      grid-area: j; }
    .dev__card--l {
      grid-area: l; }
    .dev__card--m {
      grid-area: m; }
    .dev__card--n {
      grid-area: n; }
    .dev__card--k {
      grid-area: k; }
    .dev__card--k {
      grid-area: o; }
    @media screen and (max-width: 767px) {
      .dev__card {
        border-radius: 5.208333vw;
        margin-bottom: 1em;
        width: 48%;
        overflow: visible; }
        .dev__card img {
          border-radius: 5.208333vw; } }
    .dev__card h2 {
      text-align: center;
      font-size: 2.0833332vw;
      line-height: 1.1;
      font-weight: 600;
      margin-top: 0; }
      @media screen and (max-width: 767px) {
        .dev__card h2 {
          font-size: 4.1666664vw; } }
    @media screen and (max-width: 767px) {
      .dev__card--big {
        width: 100%; } }
    .dev__card--big h2 {
      font-size: 3.33333312vw; }
      @media screen and (max-width: 767px) {
        .dev__card--big h2 {
          font-size: 7.333332864vw; } }
    .dev__card:hover .team__hover {
      opacity: 1;
      -webkit-transform: translateY(0);
              transform: translateY(0); }
    .dev__card:hover:after {
      opacity: .4; }
    .dev__card:after {
      content: "";
      position: absolute;
      left: 0;
      top: 0;
      bottom: 0;
      right: 0;
      background: #000000;
      opacity: 0;
      -webkit-transition: opacity .5s ease;
      transition: opacity .5s ease; }
      @media screen and (max-width: 767px) {
        .dev__card:after {
          display: none; } }

.collaborators {
  padding-top: 3em; }
  .collaborators__header {
    text-align: center;
    margin-bottom: 4em; }
    @media screen and (max-width: 767px) {
      .collaborators__header .page-title br {
        display: none; } }
  .collaborators__grid {
    padding: 0 2.6041665vw;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(1, 1fr);
    -webkit-column-gap: 1.3888888vw;
       -moz-column-gap: 1.3888888vw;
            column-gap: 1.3888888vw;
    row-gap: 1.3888888vw;
    margin-bottom: 1.3888888vw;
    grid-template-areas: "a b e f" "d c g ."; }
    @media screen and (max-width: 767px) {
      .collaborators__grid {
        padding: 0 3.472222vw;
        -webkit-column-gap: 3.472222vw;
           -moz-column-gap: 3.472222vw;
                column-gap: 3.472222vw;
        row-gap: 3.472222vw;
        margin-bottom: 3.472222vw;
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: repeat(2, 1fr);
        grid-template-areas: "a b" "e f" "d c" "g ."; } }
  .collaborators__card--a {
    grid-area: a; }
  .collaborators__card--b {
    grid-area: b; }
  .collaborators__card--c {
    grid-area: c; }
  .collaborators__card--d {
    grid-area: d; }
  .collaborators__card--e {
    grid-area: e; }

.team {
  padding: 0 2.6041665vw;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-template-rows: repeat(1, 1fr);
  -webkit-column-gap: 1.3888888vw;
     -moz-column-gap: 1.3888888vw;
          column-gap: 1.3888888vw;
  row-gap: 1.3888888vw;
  margin-bottom: 1.3888888vw;
  grid-template-areas: "a d e n" "f g b b" "i h b b" "c c m k" "c c j o" ". . . ." ". . . ."; }
  @media screen and (max-width: 767px) {
    .team {
      padding: 0 3.472222vw;
      -webkit-column-gap: 3.472222vw;
         -moz-column-gap: 3.472222vw;
              column-gap: 3.472222vw;
      row-gap: 3.472222vw;
      margin-bottom: 3.472222vw;
      grid-template-columns: repeat(2, 1fr);
      grid-template-rows: repeat(7, 1fr);
      grid-template-areas: "a d" "e n" "b b" "f g" "i h" "c c" "m k" "j o"; } }
  .team__card {
    position: relative;
    overflow: hidden;
    border-radius: 2.0833332vw;
    cursor: pointer; }
    @media screen and (max-width: 767px) {
      .team__card {
        border-radius: 5.208333vw;
        margin-bottom: 1em;
        width: 48%;
        overflow: visible; }
        .team__card img {
          border-radius: 5.208333vw; } }
  @media screen and (max-width: 767px) and (max-width: 767px) {
    .team__card {
      width: 100%; } }
    .team__card h2 {
      text-align: center;
      font-size: 2.0833332vw;
      line-height: 1.1;
      font-weight: 600;
      margin-top: 0; }
      @media screen and (max-width: 767px) {
        .team__card h2 {
          font-size: 4.1666664vw; } }
    @media screen and (max-width: 767px) {
      .team__card--big {
        width: 100%; } }
    .team__card--big h2 {
      font-size: 3.33333312vw; }
      @media screen and (max-width: 767px) {
        .team__card--big h2 {
          font-size: 7.333332864vw; } }
    .team__card:hover .team__hover {
      opacity: 1;
      -webkit-transform: translateY(0);
              transform: translateY(0); }
    .team__card:hover:after {
      opacity: .4; }
    .team__card:after {
      content: "";
      position: absolute;
      left: 0;
      top: 0;
      bottom: 0;
      right: 0;
      background: #000000;
      opacity: 0;
      -webkit-transition: opacity .5s ease;
      transition: opacity .5s ease; }
      @media screen and (max-width: 767px) {
        .team__card:after {
          display: none; } }
  .team__hover {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    color: #ffffff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    padding: 3.472222vw;
    opacity: 0;
    z-index: 2;
    -webkit-transform: translateY(10%);
            transform: translateY(10%);
    -webkit-transition: opacity 0.3s ease, -webkit-transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transition: opacity 0.3s ease, -webkit-transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), opacity 0.3s ease;
    transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), opacity 0.3s ease, -webkit-transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94); }
    @media screen and (max-width: 767px) {
      .team__hover {
        padding: 3.472222vw;
        position: relative;
        opacity: 1;
        background: none;
        -webkit-transform: translateY(0);
                transform: translateY(0); } }
  .team__box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    padding: 3.472222vw 8.3333328vw 3.472222vw 4.1666664vw;
    position: relative;
    overflow: hidden;
    border-radius: 2.0833332vw; }
    @media screen and (max-width: 767px) {
      .team__box {
        border-radius: 5.208333vw;
        padding: 8.680555vw 10.416666vw; } }
    .team__box h2 {
      font-weight: 600;
      font-size: 2.91666648vw;
      margin-top: 0; }
      @media screen and (max-width: 767px) {
        .team__box h2 {
          font-size: 7.2916662vw; } }
    .team__box--grey {
      background: #F2F2F2;
      color: #9C99A2; }
      .team__box--grey span {
        color: #AECBD9; }
    .team__box--pink {
      background: #FF9F9D;
      color: #DA473C; }
      .team__box--pink span {
        color: #ffffff; }

.team__card--a {
  grid-area: a; }

.team__card--b {
  grid-area: b; }

.team__card--c {
  grid-area: c; }

.team__card--d {
  grid-area: d; }

.team__card--e {
  grid-area: e; }

.team__card--f {
  grid-area: f; }

.team__card--g {
  grid-area: g; }

.team__card--h {
  grid-area: h; }

.team__card--i {
  grid-area: i; }

.team__card--j {
  grid-area: j; }

.team__card--m {
  grid-area: m; }

.team__card--n {
  grid-area: n; }

.team__card--k {
  grid-area: k; }

.join-header {
  text-align: center;
  padding-top: 6.5972218vw;
  padding-bottom: 13.1944436vw;
  position: relative; }
  @media screen and (max-width: 767px) {
    .join-header {
      padding: 32.986109vw 4.1666664vw; } }
  .join-header .hand {
    position: absolute; }
    .join-header .hand--1 {
      left: 0;
      bottom: 0;
      width: 23.4%; }
      @media screen and (max-width: 767px) {
        .join-header .hand--1 {
          bottom: auto;
          top: 10%;
          width: 35%; } }
    .join-header .hand--2 {
      right: 0;
      top: 0;
      width: 23.1%;
      z-index: 2; }
      @media screen and (max-width: 767px) {
        .join-header .hand--2 {
          width: 30%;
          top: auto;
          bottom: 10%;
          right: 0;
          overflow: hidden; }
          .join-header .hand--2 img {
            -webkit-transform: translateX(25%);
                    transform: translateX(25%); } }
    .join-header .hand--3 {
      right: 4.8611108vw;
      bottom: 0;
      width: 20.1%; }
      @media screen and (max-width: 767px) {
        .join-header .hand--3 {
          display: none; } }
  .join-header .page-title {
    margin-bottom: 3.472222vw; }
  .join-header p {
    max-width: 52%;
    color: #2E5C73;
    font-weight: 500;
    font-size: 2.0833332vw;
    margin: .5em auto 0; }
    @media screen and (max-width: 767px) {
      .join-header p {
        font-size: 4.1666664vw;
        max-width: 70%;
        margin: 1em auto 0; } }
  .join-header__subtitle {
    font-size: 3.33333312vw;
    font-weight: 700;
    color: #2E5C73;
    margin: 0; }
    @media screen and (max-width: 767px) {
      .join-header__subtitle {
        font-size: 5.208333vw; } }
  .join-header .white {
    font-size: 1.66666656vw;
    color: #ffffff; }
    @media screen and (max-width: 767px) {
      .join-header .white {
        font-size: 3.472222vw; } }
  .join-header .join-header__message {
    position: absolute;
    bottom: 2.49999984vw;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    font-size: 1.66666656vw;
    color: #ffffff; }
    @media screen and (max-width: 767px) {
      .join-header .join-header__message {
        bottom: 6.2499996vw;
        font-size: 3.472222vw;
        max-width: 100%;
        width: 100%; } }

.section--job h1 {
  font-size: 4.1666664vw;
  font-weight: 600;
  color: #2E5C73; }
  @media screen and (max-width: 767px) {
    .section--job h1 {
      font-size: 5.208333vw;
      text-align: left;
      padding-left: 7.6388884vw; } }

.info--job strong {
  color: #9C99A2; }

.info--job ul li:before {
  display: none; }

.info--job h2 {
  color: #9C99A2;
  font-size: 1.66666656vw;
  color: #000000;
  margin-bottom: 0; }
  @media screen and (max-width: 767px) {
    .info--job h2 {
      font-size: 4.1666664vw; } }

.recruitment {
  background: #ffffff; }
  .recruitment .section--footer {
    padding-bottom: 0;
    background: #f9f9f9;
    color: #00876A;
    padding-top: 100px; }
    .recruitment .section--footer .section__text {
      color: #00876A;
      max-width: 62%;
      font-weight: 600;
      font-size: 2.0833332vw;
      line-height: 1.1;
      letter-spacing: 1px; }
      @media screen and (max-width: 767px) {
        .recruitment .section--footer .section__text {
          max-width: 100%;
          font-size: 4.1666664vw; } }
    .recruitment .section--footer .copyright {
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      z-index: 3;
      padding: 1.736111vw 0;
      font-size: 0.97222216vw;
      font-weight: 300;
      text-align: center;
      color: #000000;
      color: #ffffff; }
      @media screen and (max-width: 767px) {
        .recruitment .section--footer .copyright {
          padding: 4.3402775vw;
          font-size: 2.91666648vw; } }
      .recruitment .section--footer .copyright p {
        font-size: 0.97222216vw;
        font-weight: 300; }
  .recruitment .section__text .gold {
    color: #F2E382; }
  .recruitment .section__text p {
    display: block; }
  .recruitment .section__text .p-title {
    color: #F2E382;
    margin: 0;
    font-size: 2.0833332vw; }
    @media screen and (max-width: 767px) {
      .recruitment .section__text .p-title {
        font-size: 4.1666664vw;
        line-height: 1.1;
        max-width: 80%; } }
  .recruitment .section--list {
    background: #F2F2F2;
    padding-bottom: 6.5972218vw;
    padding-top: 6.5972218vw; }
    .recruitment .section--list.section--light {
      background: #F7F7F7; }
    .recruitment .section--list .section__text {
      color: #807F7D;
      max-width: 1160px;
      margin: 0 auto;
      padding: 0 6.944444vw;
      margin: 0 auto;
      position: relative;
      z-index: 1; }
      .recruitment .section--list .section__text ul {
        margin: 0;
        padding: 0; }
        .recruitment .section--list .section__text ul li {
          font-size: 2.0833332vw;
          padding-right: 5%; }
          @media screen and (max-width: 992px) {
            .recruitment .section--list .section__text ul li {
              font-size: 6.2499996vw; } }
          @media screen and (max-width: 767px) {
            .recruitment .section--list .section__text ul li {
              font-size: 5.208333vw; } }
      @media screen and (max-width: 992px) {
        .recruitment .section--list .section__text {
          padding: 0 6.944444vw; } }
      @media screen and (max-width: 767px) {
        .recruitment .section--list .section__text {
          padding: 0 4.3402775vw; } }
    .recruitment .section--list .section__title {
      max-width: 80.5555504vw;
      font-size: 3.33333312vw;
      font-weight: 700;
      padding: 0;
      margin: 0 auto 3.472222vw;
      position: relative;
      z-index: 1; }
      @media screen and (max-width: 992px) {
        .recruitment .section--list .section__title {
          padding: 0; } }
      @media screen and (max-width: 767px) {
        .recruitment .section--list .section__title {
          padding: 0; } }
      @media screen and (max-width: 767px) {
        .recruitment .section--list .section__title {
          font-size: 5.208333vw; } }
    .recruitment .section--list li {
      display: block;
      margin-bottom: 50px;
      padding-top: 50px;
      border-top: 2px solid #9C99A2;
      font-weight: 400; }
      .recruitment .section--list li:first-child {
        border-top: none;
        padding-top: 0; }
      .recruitment .section--list li:last-child {
        margin-bottom: 0;
        padding-bottom: 30px; }
      @media screen and (max-width: 767px) {
        .recruitment .section--list li {
          padding-top: 4.3402775vw;
          margin-bottom: 4.3402775vw; } }
  .recruitment .section--form {
    width: 100%;
    background: #AECBD9;
    padding: 6.944444vw 15.2777768vw 0;
    color: #2E5C73; }
    @media screen and (max-width: 767px) {
      .recruitment .section--form {
        padding: 50px 10.416666vw 0; } }
    .recruitment .section--form .form-wrap {
      display: none; }
      .recruitment .section--form .form-wrap.is-visible {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-flow: row wrap;
                flex-flow: row wrap;
        -webkit-box-align: start;
            -ms-flex-align: start;
                align-items: flex-start;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between; }
      .recruitment .section--form .form-wrap__col {
        width: 50%; }
        @media screen and (max-width: 767px) {
          .recruitment .section--form .form-wrap__col {
            width: 100%; } }
    .recruitment .section--form .success-wrap, .recruitment .section--form .error-wrap {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      text-align: center;
      padding-bottom: 6.944444vw;
      color: #ffffff;
      font-size: 2.0833332vw;
      display: none; }
      .recruitment .section--form .success-wrap p, .recruitment .section--form .error-wrap p {
        max-width: 50%;
        margin: 0 auto;
        display: block; }
      @media screen and (max-width: 767px) {
        .recruitment .section--form .success-wrap, .recruitment .section--form .error-wrap {
          font-size: 4.1666664vw; } }
      .recruitment .section--form .success-wrap.is-visible, .recruitment .section--form .error-wrap.is-visible {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; }
    .recruitment .section--form .section__title {
      color: #2E5C73;
      position: relative;
      padding-bottom: 0.6944444vw;
      margin-bottom: 4.8611108vw;
      width: auto;
      font-size: 4.1666664vw;
      font-weight: 600;
      padding: 0;
      max-width: 100%;
      margin-top: 0; }
      @media screen and (max-width: 992px) {
        .recruitment .section--form .section__title {
          font-size: 6.2499996vw; } }
      @media screen and (max-width: 767px) {
        .recruitment .section--form .section__title {
          font-size: 5.208333vw; }
          .recruitment .section--form .section__title br {
            display: none; } }
      .recruitment .section--form .section__title span {
        display: inline-block;
        position: relative;
        padding-bottom: 0.6944444vw; }
        .recruitment .section--form .section__title span:after {
          content: "";
          display: block;
          position: absolute;
          left: 0;
          top: 100%;
          width: 45%;
          height: 4px;
          background: #2E5C73;
          z-index: 0; }

.recruitment-form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  margin: 0;
  /* style 1 */ }
  @media screen and (max-width: 767px) {
    .recruitment-form {
      margin: 0 0 0; } }
  .recruitment-form input, .recruitment-form textarea {
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    border-radius: 0;
    border: none;
    background: none;
    border-radius: 0; }
    .recruitment-form input:focus, .recruitment-form textarea:focus {
      outline: none; }
  .recruitment-form .button {
    position: relative; }
    .recruitment-form .button.is-sending span span {
      opacity: 0; }
    .recruitment-form .button.is-sending:after {
      opacity: 1; }
    .recruitment-form .button > span {
      position: relative;
      z-index: 1;
      display: -webkit-inline-box;
      display: -ms-inline-flexbox;
      display: inline-flex;
      width: 100%;
      height: 100%; }
      .recruitment-form .button > span span {
        width: 100%;
        height: 100%;
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        position: relative;
        z-index: 1;
        text-align: center;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center; }
      .recruitment-form .button > span:after {
        content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' x='0px' y='0px' width='63px' height='63px' viewBox='-53 54 63 63' style='enable-background:new -53 54 63 63;' xml:space='preserve'%3E%3Cpath fill='%23ffffff' d='M-19,115.9c16.6-1.4,29.4-16,27.9-33C7.6,67.4-5.7,55.1-21.3,55C-38.7,54.9-52.6,69.3-52,86.6 c0.5,15.7,12.9,28.3,28.3,29.4l-0.1-3.7c0-0.7-0.5-1.2-1.2-1.3c-12.7-1.7-22.6-12.8-22.2-26.3c0.4-13,10.9-23.9,23.8-24.8 c14.6-1.1,27,10.2,27.5,24.8C4.7,98-5.1,109.2-17.9,111c-0.7,0.1-1.2,0.7-1.2,1.4L-19,115.9z'/%3E%3C/svg%3E");
        display: block;
        position: absolute;
        z-index: 0;
        width: 4.37499972vw;
        height: 4.37499972vw;
        left: 50%;
        top: 50%;
        -webkit-transform-origin: center;
                transform-origin: center;
        -webkit-transform: translate3d(-50%, -50%, 0) scale(0.7) rotate(0);
                transform: translate3d(-50%, -50%, 0) scale(0.7) rotate(0);
        opacity: 1;
        -webkit-animation: rotation 2s linear infinite;
                animation: rotation 2s linear infinite;
        opacity: 0; }
    @media screen and (max-width: 767px) {
      .recruitment-form .button {
        font-size: 5.208333vw; } }
  .recruitment-form .field {
    width: 100%;
    margin: 0 0 2.0833332vw; }
    .recruitment-form .field--hidden {
      display: none; }
    @media screen and (max-width: 767px) {
      .recruitment-form .field {
        width: 100%; } }
    .recruitment-form .field--full {
      width: 100%; }
    .recruitment-form .field--tel {
      text-align: left;
      padding-top: 1em;
      font-size: 1.24999992vw; }
      @media screen and (max-width: 767px) {
        .recruitment-form .field--tel {
          font-size: 3.1249998vw; } }
    .recruitment-form .field--apply {
      margin: 0 0 4.1666664vw;
      border: none; }
      @media screen and (max-width: 767px) {
        .recruitment-form .field--apply {
          margin: 6.5972218vw 0 6.5972218vw; } }
    .recruitment-form .field--select {
      position: relative; }
      .recruitment-form .field--select:after {
        content: "▼";
        color: #000000;
        display: block;
        position: absolute;
        right: 0.6944444vw;
        top: 50%;
        -webkit-transform: translateY(-50%);
                transform: translateY(-50%);
        opacity: .5;
        font-size: 0.97222216vw; }
        @media screen and (max-width: 767px) {
          .recruitment-form .field--select:after {
            right: 2.0833332vw;
            font-size: 2.22222208vw; } }
    .recruitment-form .field label {
      font-size: 1.24999992vw;
      color: currentColor;
      font-weight: 300;
      font-family: "SF Compact", serif;
      margin-bottom: 0.6944444vw;
      display: block; }
      @media screen and (max-width: 767px) {
        .recruitment-form .field label {
          font-size: 3.1249998vw; } }
    .recruitment-form .field--upload {
      border: none; }
      .recruitment-form .field--upload label {
        margin-bottom: 2.0833332vw; }
      .recruitment-form .field--upload .jbox {
        width: 100%; }
    .recruitment-form .field ::-webkit-input-placeholder {
      /* Edge */
      color: #9C99A2;
      font-size: 1.3888888vw;
      text-transform: uppercase; }
      @media screen and (max-width: 767px) {
        .recruitment-form .field ::-webkit-input-placeholder {
          font-size: 3.472222vw; } }
    .recruitment-form .field :-ms-input-placeholder {
      /* Internet Explorer 10-11 */
      color: #9C99A2;
      font-size: 1.3888888vw;
      text-transform: uppercase; }
      @media screen and (max-width: 767px) {
        .recruitment-form .field :-ms-input-placeholder {
          font-size: 3.472222vw; } }
    .recruitment-form .field ::-webkit-input-placeholder {
      color: #9C99A2;
      font-size: 1.3888888vw;
      text-transform: uppercase; }
    .recruitment-form .field ::-moz-placeholder {
      color: #9C99A2;
      font-size: 1.3888888vw;
      text-transform: uppercase; }
    .recruitment-form .field :-ms-input-placeholder {
      color: #9C99A2;
      font-size: 1.3888888vw;
      text-transform: uppercase; }
    .recruitment-form .field ::-ms-input-placeholder {
      color: #9C99A2;
      font-size: 1.3888888vw;
      text-transform: uppercase; }
    .recruitment-form .field ::placeholder {
      color: #9C99A2;
      font-size: 1.3888888vw;
      text-transform: uppercase; }
      @media screen and (max-width: 767px) {
        .recruitment-form .field ::-webkit-input-placeholder {
          font-size: 3.472222vw; }
        .recruitment-form .field ::-moz-placeholder {
          font-size: 3.472222vw; }
        .recruitment-form .field :-ms-input-placeholder {
          font-size: 3.472222vw; }
        .recruitment-form .field ::-ms-input-placeholder {
          font-size: 3.472222vw; }
        .recruitment-form .field ::placeholder {
          font-size: 3.472222vw; } }
    .recruitment-form .field input, .recruitment-form .field textarea {
      font-size: 2.0833332vw;
      color: #2E5C73;
      font-weight: 300;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      font-family: "SF Compact", serif;
      width: 100%;
      background: #fff;
      padding: .5em; }
      @media screen and (max-width: 767px) {
        .recruitment-form .field input, .recruitment-form .field textarea {
          font-size: 5.208333vw;
          padding: .5em; } }
    .recruitment-form .field select {
      border: none;
      border-radius: 0;
      display: block;
      width: 100%;
      padding: 0;
      margin: 0;
      -webkit-appearance: none;
         -moz-appearance: none;
              appearance: none;
      height: 4.1666664vw;
      text-transform: uppercase;
      font-size: 1.45833324vw;
      color: #9C99A2;
      font-weight: 300;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      font-family: "SF Compact", serif;
      width: 100%;
      background: #fff;
      padding: .5em; }
      @media screen and (max-width: 767px) {
        .recruitment-form .field select {
          font-size: 3.472222vw;
          height: 10.416666vw; } }
    .recruitment-form .field textarea {
      background: #efefef; }
    .recruitment-form .field .inputfile {
      width: 0.1px;
      height: 0.1px;
      opacity: 0;
      overflow: hidden;
      position: absolute;
      z-index: -1; }
  .recruitment-form--medium {
    max-width: 90%; }
  .recruitment-form--small {
    margin: 0 auto;
    width: 100%; }
    .recruitment-form--small .field {
      width: 100%;
      margin: 2.0833332vw 0 0; }
      @media screen and (max-width: 767px) {
        .recruitment-form--small .field {
          margin: 5.208333vw 0 0; } }
      @media screen and (max-width: 767px) {
        .recruitment-form--small .field--apply {
          margin: 4.1666664vw 0 4.1666664vw; } }
    @media screen and (max-width: 767px) {
      .recruitment-form--small {
        margin: 2.0833332vw auto 0; } }
  .recruitment-form .inputfile + label {
    width: auto;
    max-width: 80%;
    font-weight: 500;
    text-overflow: ellipsis;
    white-space: nowrap;
    cursor: pointer;
    display: inline-block;
    overflow: hidden;
    padding: 0.6944444vw 2.0833332vw;
    color: currentColor;
    border-radius: 1.3888888vw;
    border: 1px solid currentColor;
    font-size: 1.45833324vw;
    font-weight: 500; }
    @media screen and (max-width: 767px) {
      .recruitment-form .inputfile + label {
        font-size: 3.1249998vw;
        padding: 1.736111vw 4.1666664vw;
        border-radius: 3.472222vw; } }
  .recruitment-form .inputfile:focus + label,
  .recruitment-form .inputfile.has-focus + label {
    outline: 1px dotted #000;
    outline: -webkit-focus-ring-color auto 5px; }
  .recruitment-form .inputfile + label * {
    /* pointer-events: none; */
    /* in case of FastClick lib use */ }
  .recruitment-form .inputfile + label svg {
    width: 1em;
    height: 1em;
    vertical-align: middle;
    fill: currentColor;
    margin-top: -0.25em;
    /* 4px */
    margin-right: 0.25em;
    /* 4px */ }
  .recruitment-form .inputfile-1 + label {
    color: #ffffff;
    background-color: none;
    -webkit-transition: background .5s ease, color .5s ease;
    transition: background .5s ease, color .5s ease; }
  .recruitment-form .inputfile-1:focus + label,
  .recruitment-form .inputfile-1.has-focus + label,
  .recruitment-form .inputfile-1 + label:hover {
    color: #ffffff;
    background-color: #2E5C73;
    border: 1px solid #2E5C73; }
  .recruitment-form .check {
    position: relative;
    border-bottom: none;
    /* On mouse-over, add a grey background color */
    /* When the checkbox is checked, add a blue background */
    /* Create the checkmark/indicator (hidden when not checked) */
    /* Show the checkmark when checked */
    /* Style the checkmark/indicator */ }
    .recruitment-form .check .input-checkbox {
      position: absolute;
      opacity: 0;
      cursor: pointer;
      height: 0;
      width: 0; }
    .recruitment-form .check .checkmark {
      position: absolute;
      left: 0;
      top: 0;
      margin-right: 10px;
      height: 20px;
      width: 20px;
      background-color: #fff;
      border-radius: 2px; }
    .recruitment-form .check:hover input ~ .checkmark {
      background-color: #2E5C73; }
    .recruitment-form .check input:checked ~ .checkmark {
      background-color: #2E5C73; }
    .recruitment-form .check .checkmark:after {
      content: "";
      position: absolute;
      display: none; }
    .recruitment-form .check input:checked ~ .checkmark:after {
      display: block; }
    .recruitment-form .check .checkmark:after {
      left: 9px;
      top: 5px;
      width: 5px;
      height: 10px;
      border: solid white;
      border-width: 0 3px 3px 0;
      -webkit-transform: rotate(45deg);
              transform: rotate(45deg); }
    .recruitment-form .check .is-error .checkmark {
      background: red; }
    .recruitment-form .check label {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: start;
          -ms-flex-pack: start;
              justify-content: flex-start;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-flow: row;
              flex-flow: row;
      font-size: 1.24999992vw;
      line-height: 1.4;
      position: relative;
      padding-left: 4.1666664vw;
      text-transform: none;
      left: auto;
      top: auto;
      pointer-events: auto;
      text-align: left; }
      @media screen and (max-width: 767px) {
        .recruitment-form .check label {
          font-size: 3.1249998vw;
          line-height: 3.472222vw;
          -webkit-box-orient: vertical;
          -webkit-box-direction: normal;
              -ms-flex-flow: column;
                  flex-flow: column;
          -webkit-box-align: start;
              -ms-flex-align: start;
                  align-items: flex-start;
          padding-left: 40px; } }
      .recruitment-form .check label a {
        display: inline-block;
        margin-left: 5px;
        text-decoration: underline; }
        @media screen and (max-width: 767px) {
          .recruitment-form .check label a {
            margin: 0 0 0 0; } }
      .recruitment-form .check label .label {
        display: inline-block;
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1; }

.formerror {
  color: red;
  display: none;
  text-align: left;
  padding: 1em; }
  .formerror.is-visible {
    display: block; }

.formstatus {
  display: none;
  text-align: left;
  padding: 1em; }
  .formstatus.is-visible {
    display: block; }

.contact-form {
  display: none; }
  .contact-form .formwrap {
    margin: 0 auto; }
  .has-contact .contact-form {
    display: block; }
  .has-contact-sent .contact-form {
    display: block; }
    .has-contact-sent .contact-form form {
      display: none; }

.contact-succes {
  display: none; }

.has-contact-sent .contact-succes {
  display: block; }

.section--blue .contact-form-big {
  margin: 0 auto; }

.contact-form-big {
  display: none; }
  .contact-form-big .formwrap {
    margin: 0 auto;
    width: 34.72222vw; }
    @media screen and (max-width: 767px) {
      .contact-form-big .formwrap {
        width: 100%; } }
  .has-contact-form .contact-form-big {
    display: block;
    width: 34.72222vw;
    margin: 3em auto 0 auto; }
    @media screen and (max-width: 767px) {
      .has-contact-form .contact-form-big {
        width: 100%; } }
  .has-contact-form-sent .contact-form-big {
    display: block;
    width: 34.72222vw;
    margin: 3em auto 0 auto; }
    .has-contact-form-sent .contact-form-big form {
      display: none; }
    @media screen and (max-width: 767px) {
      .has-contact-form-sent .contact-form-big {
        max-width: 100%; } }

.has-contact #contact-button {
  font-weight: 700; }

.interest-form {
  display: none; }
  .interest-form .formwrap {
    margin: 0 auto; }
  .has-interest .interest-form {
    display: block;
    width: 34.72222vw;
    margin: 3em auto 0 auto; }
    @media screen and (max-width: 767px) {
      .has-interest .interest-form {
        width: 100%; } }
  .has-interest-sent .interest-form {
    display: block;
    width: 34.72222vw;
    margin: 3em auto 0 auto; }
    @media screen and (max-width: 767px) {
      .has-interest-sent .interest-form {
        width: 100%; } }
    .has-interest-sent .interest-form form {
      display: none; }

.popup-template {
  display: none; }

.popup {
  position: fixed;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  overflow: auto;
  color: #000000;
  z-index: 10000;
  visibility: hidden;
  opacity: 0;
  -webkit-overflow-scrolling: touch;
  -webkit-transition: opacity .3s ease .3s, visibility 0s ease .3s;
  transition: opacity .3s ease .3s, visibility 0s ease .3s; }
  .has-popup .popup {
    visibility: visible;
    opacity: 1;
    -webkit-transition: opacity 0s ease 0s, visibility 0s ease 0s;
    transition: opacity 0s ease 0s, visibility 0s ease 0s; }
    .has-popup .popup .popup__bg {
      opacity: .8; }
    .has-popup .popup .popup__main {
      -webkit-transform: translateY(0) scaleY(1);
              transform: translateY(0) scaleY(1);
      opacity: 1; }
    .has-popup .popup .popup__close {
      opacity: 1;
      -webkit-transition: opacity .3s ease .3s;
      transition: opacity .3s ease .3s; }
  .has-popup-grey .popup .popup__close {
    color: #666 !important; }
  .popup__wrapper {
    position: relative;
    padding: 10vw 0;
    height: auto;
    min-height: 100%; }
    @media screen and (max-width: 767px) {
      .popup__wrapper {
        padding: 15vw 0;
        height: auto;
        min-height: 100%; } }
  .popup__bg {
    background: #9C99A2;
    opacity: 0;
    width: 100%;
    height: 100%;
    position: fixed;
    left: 0;
    top: 0;
    z-index: 0;
    -webkit-transition: opacity 0.71s cubic-bezier(0.48, 0, 0.12, 1);
    transition: opacity 0.71s cubic-bezier(0.48, 0, 0.12, 1); }
  .popup__header-wrapper {
    position: relative;
    padding: 2.0833332vw 0; }
    .popup__header-wrapper.noborder:after {
      display: none; }
    .popup__header-wrapper:after {
      display: block;
      content: "";
      width: 100%;
      height: 0.6944444vw;
      position: absolute;
      left: 0;
      bottom: 0;
      background: #9C99A2; }
    @media screen and (max-width: 767px) {
      .popup__header-wrapper h2 {
        position: relative;
        z-index: 2; } }
  .popup__header {
    border-top-left-radius: 2.0833332vw;
    border-top-right-radius: 2.0833332vw;
    position: relative;
    padding: 0 6.944444vw; }
    @media screen and (max-width: 767px) {
      .popup__header {
        border-top-left-radius: 5.208333vw;
        border-top-right-radius: 5.208333vw;
        padding: 0 11.8055548vw 0 6.944444vw; } }
    .popup__header h2 {
      font-size: 2.49999984vw;
      font-weight: 700; }
      @media screen and (max-width: 767px) {
        .popup__header h2 {
          font-size: 7.333332864vw; }
          .popup__header h2 br {
            display: none; } }
    .popup__header--image {
      padding: 0;
      overflow: hidden; }
  .popup__main {
    position: relative;
    margin: 0 auto;
    width: 100%;
    max-width: 55.3vw;
    background: #ffffff;
    border-radius: 2.0833332vw;
    z-index: 1;
    -webkit-transform: translateY(40%) scaleY(1.3);
            transform: translateY(40%) scaleY(1.3);
    -webkit-transition: opacity .2s ease, -webkit-transform .31s ease-out;
    transition: opacity .2s ease, -webkit-transform .31s ease-out;
    transition: transform .31s ease-out, opacity .2s ease;
    transition: transform .31s ease-out, opacity .2s ease, -webkit-transform .31s ease-out;
    opacity: 0; }
    @media screen and (max-width: 767px) {
      .popup__main {
        max-width: 90%;
        border-radius: 5.208333vw; } }
  .popup__close {
    position: fixed;
    right: 0;
    top: 0;
    width: 3.1249998vw;
    height: 3.1249998vw;
    color: #000000;
    z-index: 5;
    top: 12.7777776vw;
    right: 23.8888888vw;
    opacity: 0;
    -webkit-transition: opacity 0s ease 0s;
    transition: opacity 0s ease 0s; }
    @media screen and (max-width: 767px) {
      .popup__close {
        width: 7.8124995vw;
        height: 7.8124995vw;
        top: 17.7777776vw;
        right: 6.944444vw;
        z-index: 100; } }
  .popup__text {
    padding: 0 0;
    position: relative; }
    .popup__text .span-image {
      width: 55.4vw;
      margin: 2em 0 2em -27.7vw; }
      @media screen and (max-width: 767px) {
        .popup__text .span-image {
          width: 90vw;
          margin: 2em 0 2em -6.944444vw; } }
      .popup__text .span-image--fit {
        width: 46vw;
        margin: 2em 0 2em -23vw; }
        @media screen and (max-width: 767px) {
          .popup__text .span-image--fit {
            width: 100%;
            margin: 2em 0 2em 0; } }
  .popup__footer {
    padding: 3.472222vw 6.944444vw 4.1666664vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
    @media screen and (max-width: 767px) {
      .popup__footer {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-flow: column;
                flex-flow: column;
        padding: 3.472222vw 13.888888vw 8.3333328vw; } }
  .popup__hashtag {
    width: 50%;
    font-size: 1.11111104vw; }
    @media screen and (max-width: 767px) {
      .popup__hashtag {
        width: 100%;
        font-size: 2.7777776vw;
        text-align: center;
        margin-bottom: 1.5em; } }
  .popup__logo {
    display: block;
    width: 8.88888832vw;
    height: 8.88888832vw;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    color: #5F9F75; }
    @media screen and (max-width: 767px) {
      .popup__logo {
        width: 17.77777664vw;
        height: 17.77777664vw;
        -webkit-transform: none;
                transform: none; } }
  .popup__row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding-top: 3.472222vw;
    padding-bottom: 2.0833332vw;
    padding: 3.472222vw 6.944444vw 2.0833332vw;
    position: relative; }
    .popup__row:after {
      display: block;
      content: "";
      width: calc(100% - 13.88vw);
      height: 3px;
      position: absolute;
      left: 6.944444vw;
      bottom: 0;
      background: #9C99A2; }
      @media screen and (max-width: 767px) {
        .popup__row:after {
          width: calc(100% - 18.74vw); } }
    @media screen and (max-width: 767px) {
      .popup__row {
        padding: 8.680555vw 11.8055548vw 5.208333vw 6.944444vw;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-flow: row wrap;
                flex-flow: row wrap; } }
    .popup__row:last-child:after {
      display: none; }
    .popup__row--relative {
      -webkit-box-align: stretch;
          -ms-flex-align: stretch;
              align-items: stretch;
      padding-bottom: 0; }
    .popup__row--image {
      padding: 0; }
      .popup__row--image:after {
        display: none; }
    .popup__row--download {
      text-align: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
      .popup__row--download a {
        text-decoration: underline; }
    .popup__row--noborder {
      border: none; }
      .popup__row--noborder:after {
        display: none; }
    .popup__row--text {
      padding-right: 30%;
      display: block; }
      @media screen and (max-width: 767px) {
        .popup__row--text {
          padding-right: 10%; } }
      .popup__row--text ul {
        list-style: none;
        margin: 0;
        padding: 0; }
        .popup__row--text ul.titles {
          font-size: 1.66666656vw;
          font-weight: 600; }
          .popup__row--text ul.titles li:before {
            display: none; }
          @media screen and (max-width: 767px) {
            .popup__row--text ul.titles {
              font-size: 5.208333vw; }
              .popup__row--text ul.titles br {
                display: none; } }
        .popup__row--text ul li {
          margin: 0 0 1em 0;
          padding: 1em 0 0;
          position: relative;
          -webkit-box-sizing: border-box;
                  box-sizing: border-box; }
          .popup__row--text ul li p {
            margin: 0; }
          .popup__row--text ul li:before {
            content: "";
            width: 17.36111vw;
            height: 1px;
            background: #9C99A2;
            position: absolute;
            top: 0;
            left: 0;
            max-width: 100%; }
  .popup__col {
    width: 50%;
    font-size: 1.24999992vw; }
    .popup__col .iframe-video {
      width: 100%;
      height: 0;
      position: relative;
      padding-top: 56.5%; }
      .popup__col .iframe-video iframe {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%; }
    @media screen and (max-width: 767px) {
      .popup__col {
        width: 100%;
        font-size: 4.1666664vw;
        margin-bottom: 1em; } }
    .popup__col .img-rba {
      width: 7.49999952vw;
      display: inline-block;
      margin-right: 1em;
      vertical-align: middle; }
    .popup__col .img-elle {
      width: 5.48611076vw;
      display: inline-block;
      vertical-align: middle; }
    .popup__col--relative {
      position: relative; }
    .popup__col .campus-image {
      margin-left: -6.944444vw;
      margin-top: 3.472222vw; }
    .popup__col a {
      text-decoration: underline; }
    .popup__col:first-child {
      padding-right: 3.472222vw; }
    .popup__col h2, .popup__col h3 {
      margin: 0;
      font-size: 2.0833332vw;
      font-size: 1.66666656vw;
      font-weight: 600; }
      @media screen and (max-width: 767px) {
        .popup__col h2, .popup__col h3 {
          font-size: 5.208333vw; } }
    .popup__col ul {
      margin: 0 0 1em 0;
      list-style: none;
      padding: 0;
      display: inline-block; }
      .popup__col ul li {
        margin: 0 0 1em 0;
        padding: 1em 0 0;
        position: relative;
        -webkit-box-sizing: border-box;
                box-sizing: border-box; }
        .popup__col ul li p {
          margin: 0; }
        .popup__col ul li:first-child {
          padding-top: 0; }
          .popup__col ul li:first-child:before {
            display: none; }
        .popup__col ul li:before {
          content: "";
          width: 20.833332vw;
          height: 1px;
          background: #9C99A2;
          position: absolute;
          top: 0;
          left: 0;
          max-width: 100%; }
      .popup__col ul.green li:before {
        background: #5F9F75; }

.pop-image {
  z-index: 0; }
  .pop-image.img-high-standards {
    position: absolute;
    right: -1.3888888vw;
    bottom: 0;
    width: 60%; }
    @media screen and (max-width: 767px) {
      .pop-image.img-high-standards {
        right: -3.472222vw;
        bottom: 0;
        width: 40%; } }
  .pop-image.img-standards {
    position: absolute;
    right: 6%;
    bottom: 0;
    width: 30%; }
    @media screen and (max-width: 767px) {
      .pop-image.img-standards {
        right: 0%;
        bottom: 0;
        width: 45%; } }
  .pop-image.img-curriculum {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 110%; }
    @media screen and (max-width: 767px) {
      .pop-image.img-curriculum {
        position: relative;
        width: 100%; } }
  .pop-image.map-image {
    position: absolute;
    right: 3vw;
    bottom: 0;
    width: 150%; }
    @media screen and (max-width: 767px) {
      .pop-image.map-image {
        position: relative;
        width: 100%;
        right: auto;
        margin-top: 1em; } }

.table-pad {
  padding: 0 8.3333328vw; }
  @media screen and (max-width: 767px) {
    .table-pad {
      padding: 0; } }

.table {
  width: 100%; }
  @media screen and (max-width: 767px) {
    .table {
      font-size: 3.05555536vw; } }
  .table--cellborder .table__cell {
    border-bottom: 1px solid #000000; }
    .table--cellborder .table__cell--noborder {
      border: none; }
  .table__head .table__cell {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column; }
  .table__head h4 {
    margin-bottom: .5em; }
    .table__head h4 span {
      display: block;
      font-weight: 700; }
  .table__row {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    .table__row:last-child .table__cell {
      border-bottom: 1px solid #000000; }
  .table__cell {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 18%;
            flex: 0 0 18%; }
    @media screen and (max-width: 767px) {
      .table__cell {
        -webkit-box-flex: 0;
            -ms-flex: 0 0 22%;
                flex: 0 0 22%; } }
    .table__cell:first-child {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 24%;
              flex: 0 0 24%; }
    @media screen and (max-width: 767px) {
      .table__cell:nth-child(2) {
        -webkit-box-flex: 0;
            -ms-flex: 0 0 15%;
                flex: 0 0 15%; }
      .table__cell:nth-child(3) {
        -webkit-box-flex: 0;
            -ms-flex: 0 0 15%;
                flex: 0 0 15%; } }
  .table__half {
    width: 42%; }
    @media screen and (max-width: 767px) {
      .table__half {
        width: 54%; } }
    .table__half--flex {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
    .table__half:first-child {
      width: 42%; }
      @media screen and (max-width: 767px) {
        .table__half:first-child {
          width: 50%; } }
    .table__half .table__cell {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 40%;
              flex: 0 0 40%; }
      .table__half .table__cell:first-child {
        -webkit-box-flex: 0;
            -ms-flex: 0 0 57%;
                flex: 0 0 57%; }

.table-wrapper {
  padding: 2.7777776vw; }
  .table-wrapper--round {
    border-radius: 2.0833332vw; }
  .table-wrapper--lightgrey {
    background: #F7F7F7; }

.fees-table {
  position: relative;
  z-index: 1;
  color: #000000; }
  .fees-table .table {
    color: #000000; }
    .fees-table .table:last-child .table__cell {
      border: none; }
    .fees-table .table__cell {
      line-height: 1.4;
      -webkit-box-flex: 0;
          -ms-flex: 0 0 19%;
              flex: 0 0 19%; }
      .fees-table .table__cell:first-child {
        -webkit-box-flex: 0;
            -ms-flex: 0 0 37%;
                flex: 0 0 37%; }
    .fees-table .table__head {
      margin-bottom: 1em;
      color: #5F9F75; }
    .fees-table .table__row:first-child {
      padding: 1em 0 0; }
    .fees-table .table__row:last-child .table__cell {
      padding: 0 0 1em 0; }

.organize__table .table__cell {
  text-align: left;
  padding: .75em 0; }
  .organize__table .table__cell p {
    color: #DA473C; }
    .organize__table .table__cell p strong {
      color: #000000; }

.organize__table .table__head .table__cell {
  font-weight: 700;
  text-align: left;
  padding: .75em 0; }

.organize__table .table__footer {
  text-align: center;
  padding: 4em 0 1em; }

.cover-manifesto .manifesto-lines .manifesto-line {
  margin-top: -1.5em; }
  @media screen and (max-width: 767px) {
    .cover-manifesto .manifesto-lines .manifesto-line {
      margin-top: -0.70em; } }

.manifestobanner {
  width: 100%; }
  .manifestobanner .card {
    border-radius: 0; }
    .manifestobanner .card .card__image {
      border-radius: 0; }
    .manifestobanner .card .card__content .video-button {
      position: absolute;
      left: 50%;
      bottom: 10%;
      -webkit-transform: translateX(-50%);
              transform: translateX(-50%); }

.manifesto {
  padding: 0 15.2777768vw 6.5972218vw;
  margin: 10.416666vw auto 0; }
  @media screen and (max-width: 767px) {
    .manifesto {
      padding: 0 10.416666vw 0;
      margin: 16.4930545vw auto 0; } }
  .manifesto svg {
    width: auto;
    height: 24.9999984vw;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex; }
    @media screen and (max-width: 767px) {
      .manifesto svg {
        height: 49.9999968vw; } }
  .manifesto__title {
    margin-bottom: 6.944444vw;
    max-width: 83%; }
    @media screen and (max-width: 767px) {
      .manifesto__title {
        max-width: 100%; } }
    .manifesto__title h2 {
      font-size: 2.0833332vw;
      font-weight: 500; }
      @media screen and (max-width: 767px) {
        .manifesto__title h2 {
          font-size: 5.208333vw; } }
  .manifesto__row {
    position: relative; }
    @media screen and (max-width: 767px) {
      .manifesto__row {
        padding: 10.416666vw 0; } }
    .manifesto__row:after {
      content: "";
      height: 3px;
      width: 100%;
      position: absolute;
      left: 0;
      top: 1px;
      background: #9C99A2; }
    .manifesto__row--first:after {
      display: none; }
    .manifesto__row .num {
      color: #F3EC8C;
      position: relative;
      z-index: 0;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; }
      @media screen and (max-width: 767px) {
        .manifesto__row .num {
          position: absolute;
          left: 0;
          bottom: 0; } }
  .manifesto__text {
    position: absolute;
    z-index: 1;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%); }
    @media screen and (max-width: 767px) {
      .manifesto__text {
        position: relative;
        top: auto;
        -webkit-transform: none;
                transform: none; } }
  .manifesto__col {
    width: 59%; }
    @media screen and (max-width: 767px) {
      .manifesto__col {
        width: 100%; } }
    .manifesto__col:first-child {
      width: 35%; }
      @media screen and (max-width: 767px) {
        .manifesto__col:first-child {
          width: 100%; } }
    .manifesto__col h3 {
      margin: 0;
      font-size: 2.0833332vw;
      font-weight: 600; }
      @media screen and (max-width: 767px) {
        .manifesto__col h3 {
          font-size: 5.208333vw;
          margin-bottom: 1em; } }

.cover-manifesto {
  position: relative;
  padding-top: 13.1944436vw;
  background: #F3EC8C;
  padding-bottom: 13.1944436vw; }
  @media screen and (max-width: 767px) {
    .cover-manifesto {
      padding: 35.4166644vw 0; } }
  .cover-manifesto .mbox {
    width: 20%;
    position: absolute; }
    @media screen and (max-width: 767px) {
      .cover-manifesto .mbox {
        position: relative;
        margin: 2em auto 0; } }
    .cover-manifesto .mbox__number {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      width: 2.0833332vw;
      height: 2.0833332vw;
      color: #ffffff;
      border-radius: 1.0416666vw;
      background: #000000;
      font-size: 1.0416666vw; }
      @media screen and (max-width: 767px) {
        .cover-manifesto .mbox__number {
          width: 4.8611108vw;
          height: 4.8611108vw;
          border-radius: 2.4305554vw;
          font-size: 2.6041665vw;
          margin-bottom: 1em; } }
    .cover-manifesto .mbox--1 {
      left: 16%;
      width: 21%;
      top: 19.7916654vw; }
      .cover-manifesto .mbox--1 .mbox__number {
        background: #AB6B8D; }
      @media screen and (max-width: 767px) {
        .cover-manifesto .mbox--1 {
          left: auto;
          width: auto;
          top: auto;
          width: 65%; } }
    .cover-manifesto .mbox--2 {
      left: 66%;
      top: 36.1111088vw; }
      .cover-manifesto .mbox--2 .mbox__number {
        background: #348053; }
      @media screen and (max-width: 767px) {
        .cover-manifesto .mbox--2 {
          left: auto;
          width: auto;
          top: auto;
          width: 65%; } }
    .cover-manifesto .mbox--3 {
      width: 26%;
      left: 57%;
      top: 56.87499636vw; }
      .cover-manifesto .mbox--3 .mbox__number {
        background: #4AA976; }
      @media screen and (max-width: 767px) {
        .cover-manifesto .mbox--3 {
          left: auto;
          width: auto;
          top: auto;
          width: 65%; } }
  .cover-manifesto__footer {
    text-align: center;
    margin: 13.5416658vw 0 0;
    padding-bottom: 4.1666664vw; }
    @media screen and (max-width: 767px) {
      .cover-manifesto__footer {
        width: 65%;
        margin: 9.0277772vw auto 0;
        text-align: left; } }
  .cover-manifesto__content {
    position: absolute;
    z-index: 1;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0; }
    @media screen and (max-width: 767px) {
      .cover-manifesto__content {
        position: relative; } }
  .cover-manifesto__image {
    width: 70vw;
    opacity: .8;
    margin: 0 auto; }
    @media screen and (max-width: 767px) {
      .cover-manifesto__image {
        width: 90vw; } }
    .cover-manifesto__image .manifesto-line {
      width: 70vw;
      height: 10.9728395056vw; }
      @media screen and (max-width: 767px) {
        .cover-manifesto__image .manifesto-line {
          width: 90vw;
          height: 14.1079365072vw; } }
  .cover-manifesto .page-title {
    margin-bottom: .5em; }
  .cover-manifesto p {
    font-size: 2.0833332vw;
    font-weight: 500; }
    @media screen and (max-width: 767px) {
      .cover-manifesto p {
        font-size: 4.1666664vw; } }

.num--1 {
  padding-left: 28%; }

.num--2 {
  padding-left: 56%; }

.num--3 {
  padding-left: 1%; }

.num--4 {
  padding-left: 45%; }

.num--5 {
  padding-left: 71%; }

.num--6 {
  padding-left: 6%; }

.num--7 {
  padding-left: 41%; }

.num--8 {
  padding-left: 57%; }

.num--9 {
  padding-left: 12%; }

.num--10 {
  padding-left: 41%; }

@media screen and (max-width: 767px) {
  .num--1 {
    padding-left: 0%; }
  .num--2 {
    padding-left: 30%; }
  .num--3 {
    padding-left: 50%; }
  .num--4 {
    padding-left: 35%; }
  .num--5 {
    padding-left: 10%; }
  .num--6 {
    padding-left: 45%; }
  .num--7 {
    padding-left: 52%; }
  .num--8 {
    padding-left: 30%; }
  .num--9 {
    padding-left: 0%; }
  .num--10 {
    padding-left: 15%; } }

.admissions {
  color: #5F9F75;
  background: rgba(226, 244, 222, 0.8);
  position: relative; }

.cover-admissions {
  position: relative;
  padding: 13.888888vw 13.888888vw 0;
  height: 35.23vw; }
  @media screen and (max-width: 767px) {
    .cover-admissions {
      padding: 16.4930545vw 10.416666vw 0;
      height: 83.691vw; }
      .cover-admissions:after {
        content: "";
        width: 92%;
        height: 2.0833332vw;
        display: block;
        background: #5F9F75;
        position: absolute;
        left: 8%;
        bottom: 0; } }
  .cover-admissions__content {
    position: relative;
    z-index: 1; }
  .cover-admissions__image {
    position: absolute;
    right: 0;
    top: 0;
    width: 53.54vw;
    height: 35.23vw;
    mix-blend-mode: multiply;
    overflow: hidden; }
    @media screen and (max-width: 767px) {
      .cover-admissions__image {
        width: 64.248vw;
        height: 59.076vw;
        top: auto;
        bottom: 0; } }
    .cover-admissions__image img {
      width: 53.54vw;
      height: 49.23vw;
      margin-top: -14vw; }
      @media screen and (max-width: 767px) {
        .cover-admissions__image img {
          width: 100%;
          height: 100%;
          margin-top: 0;
          -o-object-fit: cover;
             object-fit: cover; } }
    .cover-admissions__image:after {
      content: "";
      width: 90%;
      height: 1.3888888vw;
      display: block;
      background: #5F9F75;
      position: absolute;
      right: 0;
      bottom: 0; }
      @media screen and (max-width: 767px) {
        .cover-admissions__image:after {
          display: none; } }
  .cover-admissions .page-title {
    margin-bottom: .5em; }
  .cover-admissions p {
    font-size: 2.0833332vw;
    font-weight: 500;
    margin-bottom: 0;
    color: #000000; }
    @media screen and (max-width: 767px) {
      .cover-admissions p {
        font-size: 5.208333vw; } }

.admissions-steps {
  padding: 0 4.1666664vw;
  margin-top: -3.05555536vw; }
  @media screen and (max-width: 767px) {
    .admissions-steps {
      padding: 0 10.416666vw;
      margin-top: 3.05555536vw; } }
  .admissions-steps__header {
    padding-left: 9.7222216vw;
    padding-bottom: 8.3333328vw; }
    .admissions-steps__header p {
      max-width: 45%;
      color: #000000; }
    @media screen and (max-width: 767px) {
      .admissions-steps__header {
        padding-left: 0; }
        .admissions-steps__header p {
          max-width: 90%; } }
  .admissions-steps__action {
    padding: 0.6944444vw 0 6.944444vw;
    text-align: left; }
    .admissions-steps__action .button--more {
      text-align: center;
      line-height: 1.1;
      border-color: #5F9F75;
      color: #5F9F75;
      padding-top: .5em;
      padding-bottom: .5em; }
      .admissions-steps__action .button--more:hover {
        color: #E2F4DE; }
  .admissions-steps .steps-title {
    font-size: 3.33333312vw;
    font-weight: 700;
    margin-top: 0; }
    @media screen and (max-width: 767px) {
      .admissions-steps .steps-title {
        display: none; } }
  .admissions-steps .steps {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    list-style: none;
    margin: 0;
    padding: 0;
    color: #000000;
    position: relative; }
    @media screen and (max-width: 767px) {
      .admissions-steps .steps:before {
        content: "";
        display: block;
        width: 30%;
        height: 100%;
        position: absolute;
        right: 0;
        top: 0;
        background: -webkit-gradient(linear, left top, right top, from(rgba(226, 244, 222, 0)), color-stop(80%, #e2f4de));
        background: linear-gradient(90deg, rgba(226, 244, 222, 0) 0%, #e2f4de 80%);
        z-index: 2;
        pointer-events: none; } }
    .admissions-steps .steps .empty {
      display: none; }
      @media screen and (max-width: 767px) {
        .admissions-steps .steps .empty {
          display: block;
          width: 0; } }
    @media screen and (max-width: 767px) {
      .admissions-steps .steps {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-flow: row;
                flex-flow: row; } }
    .admissions-steps .steps li {
      margin: 0;
      width: 18%; }
      @media screen and (max-width: 767px) {
        .admissions-steps .steps li {
          width: 60%;
          padding-right: 5%; }
          .admissions-steps .steps li.steps--large {
            width: 100%;
            padding-right: 45%; } }
      .admissions-steps .steps li .num {
        color: #ffffff;
        font-weight: 900;
        font-size: 9.99999936vw; }
        @media screen and (max-width: 767px) {
          .admissions-steps .steps li .num {
            font-size: 13.888888vw; } }
      .admissions-steps .steps li h4 {
        font-weight: 700;
        font-size: 2.0833332vw;
        color: #9C99A2; }
        @media screen and (max-width: 767px) {
          .admissions-steps .steps li h4 {
            font-size: 4.1666664vw; } }
      .admissions-steps .steps li.current .num {
        color: #5F9F75; }
      .admissions-steps .steps li.current h4 {
        color: #000000; }
      .admissions-steps .steps li.current .steps__text {
        color: #000000; }
    .admissions-steps .steps__text {
      max-width: 95%;
      color: #9C99A2; }
      @media screen and (max-width: 767px) {
        .admissions-steps .steps__text {
          max-width: 100%;
          font-size: 3.472222vw; } }

.admissions-fees {
  padding: 0 4.1666664vw; }
  .admissions-fees .header__row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row;
            flex-flow: row;
    margin-bottom: 3.472222vw; }
  .admissions-fees .header__cell {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    width: 16%;
    text-align: center; }
    @media screen and (max-width: 767px) {
      .admissions-fees .header__cell {
        width: 25%;
        font-size: 3.472222vw; } }
    .admissions-fees .header__cell:first-child {
      width: 68%;
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: flex-start;
      text-align: left; }
      @media screen and (max-width: 767px) {
        .admissions-fees .header__cell:first-child {
          width: 50%; } }
    .admissions-fees .header__cell h4 {
      margin-bottom: .3em; }
      .admissions-fees .header__cell h4 span {
        display: block;
        font-weight: 700; }
    .admissions-fees .header__cell .info-icon {
      display: block;
      width: 1.52777768vw;
      height: 1.736111vw; }
  .admissions-fees .fees-title {
    font-size: 9.99999936vw;
    margin: 0;
    font-weight: 900;
    letter-spacing: -.02em;
    line-height: .9; }
    .admissions-fees .fees-title span {
      font-size: 7.22222176vw; }

.mobile-info {
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 3;
  background: #FCF6F0;
  visibility: hidden; }
  .mobile-info.is-visible {
    visibility: visible; }
  @media screen and (max-width: 767px) {
    .mobile-info {
      font-size: 3.472222vw;
      bottom: auto;
      border-radius: 5.208333vw;
      padding: 5.208333vw;
      width: 100%;
      top: 10%; } }

.mobile-fees {
  display: none; }
  .mobile-fees__cover {
    position: relative; }
    .mobile-fees__cover:after {
      pointer-events: none;
      content: "";
      position: absolute;
      height: 100%;
      right: 0;
      top: 0;
      width: 11.1111104vw;
      background: -webkit-gradient(linear, left top, right top, from(rgba(226, 244, 222, 0)), to(#e2f4de));
      background: linear-gradient(90deg, rgba(226, 244, 222, 0) 0%, #e2f4de 100%); }
  .mobile-fees .info-icon {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    width: 3.05555536vw;
    height: 3.472222vw; }
  @media screen and (max-width: 767px) {
    .mobile-fees {
      display: block;
      padding: 4.3402775vw 4.3402775vw 0;
      font-size: 3.472222vw;
      position: relative;
      padding-top: 11.1111104vw;
      margin-top: 6.944444vw; } }
  .mobile-fees .fees-title {
    font-size: 15.2777768vw;
    margin: 0 0 .3em;
    font-weight: 900;
    letter-spacing: -.02em;
    line-height: .9;
    position: absolute;
    left: 4.3402775vw;
    top: -12.4999992vw;
    width: 50%; }
  .mobile-fees .header__row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row;
            flex-flow: row;
    margin-bottom: 3.472222vw; }
  .mobile-fees .header__cell {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    width: 100%;
    text-align: center;
    color: #5F9F75; }
    .mobile-fees .header__cell h4 {
      margin: 0 auto .4em; }
      .mobile-fees .header__cell h4 span {
        display: block;
        font-weight: 700; }
    .mobile-fees .header__cell .info-icon {
      display: block;
      width: 3.8194442vw;
      height: 4.3402775vw;
      margin: 0 auto; }

.fee-slider {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .fee-slider .fee-slides {
    width: 49%; }
    .fee-slider .fee-slides .fee-slide {
      width: 100%; }
      .fee-slider .fee-slides .fee-slide .fee__cell {
        color: #000000; }
      .fee-slider .fee-slides .fee-slide:first-child .fee__cell {
        color: #666; }
    .fee-slider .fee-slides .fee__row {
      width: 100%; }
    .fee-slider .fee-slides .fee__cell {
      width: 100%;
      position: relative; }
      .fee-slider .fee-slides .fee__cell:first-child {
        width: 100%; }

.fee {
  margin-bottom: 9.99999936vw;
  color: #000000; }
  .fee .mobile-space {
    display: none; }
    @media screen and (max-width: 767px) {
      .fee .mobile-space {
        display: block; } }
  .fee--mobile {
    width: 49%; }
    .fee--mobile .fee__cell {
      width: 100%; }
      .fee--mobile .fee__cell:first-child {
        width: 100%; }
  .fee__row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap; }
    .fee__row:first-child .fee__cell {
      border-top: none; }
  .fee__header {
    text-align: center;
    padding: 1em 4em;
    background: rgba(255, 255, 255, 0.3);
    border-top: 3px solid #000000; }
    @media screen and (max-width: 767px) {
      .fee__header {
        border-top: 1px solid #000000; } }
    @media screen and (max-width: 767px) {
      .fee__header {
        font-size: 3.472222vw; } }
    .fee__header p {
      margin: 0;
      font-weight: 700; }
  .fee__cell {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    width: 16%;
    border-top: 1px solid #000000;
    line-height: 1.4;
    padding: .75em 0;
    font-weight: 700; }
    @media screen and (max-width: 767px) {
      .fee__cell {
        border-top: 1px solid #000000;
        font-size: 3.472222vw; } }
    @media screen and (max-width: 767px) {
      .fee__cell--head {
        border-top: 1px solid #000000;
        font-size: 3.472222vw; } }
    .fee__cell:first-child {
      width: 32%;
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: flex-start; }
      @media screen and (max-width: 767px) {
        .fee__cell:first-child {
          width: 100%; } }
    .fee__cell:nth-child(2) {
      width: 36%;
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: flex-start;
      font-weight: 400; }
      @media screen and (max-width: 767px) {
        .fee__cell:nth-child(2) {
          width: 50%; } }
    @media screen and (max-width: 767px) {
      .fee__cell:nth-child(3) {
        width: 25%; } }
    @media screen and (max-width: 767px) {
      .fee__cell:nth-child(4) {
        width: 25%; } }
    .fee__cell--long {
      width: 32%;
      text-align: center;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
      @media screen and (max-width: 767px) {
        .fee__cell--long {
          width: 50% !important; } }
    .fee__cell--info {
      width: 24%; }
      .fee__cell--info p {
        font-size: 0.97222216vw;
        border-top: 1px solid #000000; }
        .fee__cell--info p:first-child {
          border: none; }
        @media screen and (max-width: 767px) {
          .fee__cell--info p {
            font-size: 2.4305554vw; } }
    .fee__cell--short p {
      line-height: 2.29166652vw; }
      @media screen and (max-width: 767px) {
        .fee__cell--short p {
          line-height: 1.2; } }
    .fee__cell p {
      margin: 0; }
    .fee__cell h4 {
      font-weight: 700;
      margin: 0; }

.aditional {
  max-width: 65%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  background: #F7F7F7;
  padding: 2.7777776vw 4.1666664vw;
  border-radius: 2.0833332vw;
  margin: 0 auto;
  font-size: 0.97222216vw;
  color: #000000;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0; }
  @media screen and (max-width: 767px) {
    .aditional {
      max-width: 90%;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      padding: 5.5555552vw 0;
      border-radius: 5.208333vw;
      margin: 0 auto;
      font-size: 3.472222vw;
      border-bottom-right-radius: 0;
      border-bottom-left-radius: 0; } }
  .aditional__cell {
    width: 30%; }
    @media screen and (max-width: 767px) {
      .aditional__cell {
        width: 80%; } }
  .aditional__row {
    width: 100%;
    text-align: center;
    padding-top: 2.7777776vw; }
    @media screen and (max-width: 767px) {
      .aditional__row {
        text-align: left;
        padding: 6.944444vw 8.3333328vw; } }
    @media screen and (max-width: 767px) {
      .aditional__row--info {
        text-align: center;
        padding: 6.944444vw 2.7777776vw; } }
  .aditional h4 {
    font-weight: 700; }
  .aditional ul {
    list-style: none;
    margin: 0;
    padding: 0; }

.info-box {
  position: relative; }
  .info-box--hidden {
    visibility: hidden; }
  .info-box .adm-info {
    position: absolute;
    font-size: 0.97222216vw;
    background: #FCF6F0;
    border-radius: 2.0833332vw;
    padding: 2.0833332vw;
    width: 16.6666656vw;
    left: 50%;
    bottom: 2.0833332vw;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    z-index: 3;
    visibility: hidden; }
    @media screen and (max-width: 767px) {
      .info-box .adm-info {
        font-size: 3.472222vw;
        bottom: auto;
        border-radius: 5.208333vw;
        padding: 5.208333vw;
        width: 100%;
        top: 100%; } }
  .info-box.is-visible .adm-info {
    visibility: visible; }

.admissions-steps {
  /* icon color */
  /* hide disabled button */ }
  .admissions-steps .flickity-button {
    background: transparent;
    z-index: 3; }
    .admissions-steps .flickity-button.previous {
      left: -40px; }
    .admissions-steps .flickity-button.next {
      right: -40px; }
    .admissions-steps .flickity-button:hover {
      background: transparent; }
  .admissions-steps .flickity-button-icon {
    fill: #5F9F75; }
  .admissions-steps .flickity-button:disabled {
    display: none; }

/* no circle */
.mobile-fees {
  /* icon color */
  /* hide disabled button */ }
  .mobile-fees .flickity-button {
    background: transparent;
    z-index: 3; }
    .mobile-fees .flickity-button.previous {
      top: -40px;
      left: 10px; }
    .mobile-fees .flickity-button.next {
      top: -40px;
      right: 10px; }
    .mobile-fees .flickity-button:hover {
      background: transparent; }
  .mobile-fees .flickity-button-icon {
    fill: #5F9F75; }

/* enable Flickity by default */
.flickity-step:after {
  content: 'flickity';
  display: none;
  /* hide :after */ }

@media screen and (min-width: 768px) {
  /* disable Flickity for large devices */
  .flickity-step:after {
    content: ''; } }

.cover-accreditation {
  position: relative;
  padding: 9.0277772vw 13.888888vw 0;
  text-align: center; }
  @media screen and (max-width: 767px) {
    .cover-accreditation {
      padding: 16.4930545vw 0 0; } }
  .cover-accreditation p {
    color: #2E5C73;
    font-size: 2.0833332vw;
    font-weight: 500; }
    @media screen and (max-width: 767px) {
      .cover-accreditation p {
        font-size: 4.1666664vw;
        padding-left: 4.3402775vw;
        padding-right: 4.3402775vw; }
        .cover-accreditation p br {
          display: none; } }
  .cover-accreditation__subtitle {
    margin: 5.5555552vw 0 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
    .cover-accreditation__subtitle p {
      margin: 0; }
  .cover-accreditation__image {
    width: 80%;
    margin: 1em auto 0;
    border-bottom: 1px solid #2E5C73; }
    @media screen and (max-width: 767px) {
      .cover-accreditation__image {
        width: 100%; } }

.contact {
  padding: 9.0277772vw 22.2222208vw 4.1666664vw;
  text-align: left; }
  @media screen and (max-width: 767px) {
    .contact {
      padding: 16.4930545vw 10.416666vw 0; } }
  .contact__title {
    font-size: 2.91666648vw;
    font-weight: 700;
    margin-bottom: .2em; }
    @media screen and (max-width: 767px) {
      .contact__title {
        font-size: 7.2916662vw; } }
  .contact__subtitle {
    font-size: 1.80555544vw;
    color: #000000; }
    @media screen and (max-width: 767px) {
      .contact__subtitle {
        font-size: 4.5138886vw; } }
  .contact .contacts {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    border-top: 1px solid #dedede;
    padding-top: 1em; }
    @media screen and (max-width: 767px) {
      .contact .contacts {
        display: block; } }
    .contact .contacts__col {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-flow: column;
              flex-flow: column;
      width: 40%;
      text-align: left; }
      .contact .contacts__col:first-child {
        width: 60%; }
      .contact .contacts__col a {
        margin-bottom: 1.5em; }
  .contact .actions {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    margin: 10.416666vw 0 3.472222vw; }
    @media screen and (max-width: 767px) {
      .contact .actions {
        margin: 20.833332vw 0 13.888888vw;
        display: block; } }
    .contact .actions__col {
      width: 45%;
      margin-bottom: 3.472222vw; }
      @media screen and (max-width: 767px) {
        .contact .actions__col {
          width: 100%;
          margin-bottom: 2em; } }
      .contact .actions__col:first-child {
        width: 55%; }
        @media screen and (max-width: 767px) {
          .contact .actions__col:first-child {
            width: 100%; } }
    .contact .actions p {
      text-transform: uppercase;
      font-size: 0.97222216vw;
      letter-spacing: 0.05em;
      color: #000000;
      margin-bottom: 0; }
      @media screen and (max-width: 767px) {
        .contact .actions p {
          font-size: 2.9513887vw; } }
    .contact .actions h3 {
      font-size: 2.91666648vw;
      margin: 0;
      line-height: 1.25;
      font-weight: 300;
      margin-top: 0; }
      @media screen and (max-width: 767px) {
        .contact .actions h3 {
          font-size: 7.2916662vw; } }
    .contact .actions__button {
      display: -webkit-inline-box;
      display: -ms-inline-flexbox;
      display: inline-flex;
      padding: 0.6944444vw 2.0833332vw;
      border-radius: 3.472222vw;
      background: linear-gradient(240deg, #f1cb00 0%, #de9b00 100%);
      color: #E2F4DE;
      margin-top: 1.0416666vw;
      cursor: pointer;
      -webkit-transition: background .3s ease;
      transition: background .3s ease;
      font-size: 1.45833324vw; }
      .contact .actions__button:hover {
        background: linear-gradient(240deg, #f1cb00 0%, #f1cb00 100%); }
      @media screen and (max-width: 767px) {
        .contact .actions__button {
          font-size: 3.6458331vw;
          padding: 1.736111vw 5.208333vw; } }
  .contact .follow h3 {
    font-size: 2.91666648vw;
    font-weight: 700;
    max-width: 80%;
    margin-bottom: .2em; }
    @media screen and (max-width: 767px) {
      .contact .follow h3 {
        font-size: 7.2916662vw; } }
  .contact .follow p {
    font-size: 1.80555544vw;
    color: #000000; }
    @media screen and (max-width: 767px) {
      .contact .follow p {
        font-size: 4.5138886vw; } }
  .contact .follow .icons a {
    display: inline-block;
    width: 3.33333312vw;
    height: 3.33333312vw;
    margin-right: 0.97222216vw; }
    @media screen and (max-width: 767px) {
      .contact .follow .icons a {
        width: 6.66666624vw;
        height: 6.66666624vw;
        margin-right: 2.4305554vw; } }

.table {
  border-collapse: collapse;
  margin: 25px 0;
  font-size: 0.9em;
  font-family: sans-serif; }
  @media screen and (max-width: 767px) {
    .table {
      max-width: 100%; } }
  .table--contact {
    max-width: 80%; }
  .table th, .table td {
    padding: 0.97222216vw 0;
    width: 45%; }
    @media screen and (max-width: 767px) {
      .table th, .table td {
        padding: 2.7777776vw 0; } }
    .table th:first-child, .table td:first-child {
      width: 55%; }
  .table th {
    color: #000000;
    font-weight: bold;
    text-transform: uppercase;
    font-size: 0.97222216vw;
    letter-spacing: 0.05em; }
    @media screen and (max-width: 767px) {
      .table th {
        font-size: 2.9513887vw; } }
    .table th span {
      display: block;
      font-weight: normal; }
  .table .arrow {
    width: 1.11111104vw;
    height: 1.11111104vw; }
  .table td {
    font-size: 1.80555544vw;
    font-weight: 300; }
    @media screen and (max-width: 767px) {
      .table td {
        font-size: 4.5138886vw; } }
  .table tr {
    border-bottom: 1px solid #9C99A2; }
  .table tr:last-of-type {
    border: none; }

.bus {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-top: 4.1666664vw; }
  @media screen and (max-width: 767px) {
    .bus {
      display: block; } }
  .bus__table {
    width: 60%; }
    @media screen and (max-width: 767px) {
      .bus__table {
        width: 100%; } }
  .bus__image {
    width: 40%;
    padding-top: 3.472222vw; }
    @media screen and (max-width: 767px) {
      .bus__image {
        width: 100%;
        padding-top: 10.416666vw; } }
    .bus__image img {
      width: 140%; }
      @media screen and (max-width: 767px) {
        .bus__image img {
          width: 100%; } }
  .bus__title {
    font-size: 2.91666648vw;
    font-weight: 700;
    margin-bottom: .2em; }
    @media screen and (max-width: 767px) {
      .bus__title {
        font-size: 7.2916662vw; } }
  .bus__subtitle {
    font-size: 1.80555544vw;
    color: #000000; }
    @media screen and (max-width: 767px) {
      .bus__subtitle {
        font-size: 4.5138886vw; } }
  .bus__info {
    font-size: 0.76388884vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    color: #000000; }
    @media screen and (max-width: 767px) {
      .bus__info {
        font-size: 3.472222vw;
        -webkit-box-align: start;
            -ms-flex-align: start;
                align-items: flex-start; } }
  .bus .pin {
    width: 0.62499996vw;
    height: 0.83333328vw;
    display: inline-block;
    margin-right: 0.48611108vw; }
    @media screen and (max-width: 767px) {
      .bus .pin {
        width: 4.1666664vw;
        height: 5.5555552vw;
        margin-top: .3em;
        margin-right: 2.0833332vw; } }

.contact-formular {
  margin-bottom: 6.944444vw; }
  @media screen and (max-width: 767px) {
    .contact-formular {
      margin-bottom: 13.888888vw; } }
  .contact-formular h3 {
    font-size: 2.91666648vw;
    margin: 0;
    line-height: 1.25;
    font-weight: 300;
    margin-top: 0; }
    @media screen and (max-width: 767px) {
      .contact-formular h3 {
        font-size: 7.2916662vw; } }
  .contact-formular .ctcbutton {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    padding: 0.6944444vw 2.0833332vw;
    border-radius: 3.472222vw;
    background: linear-gradient(240deg, #f1cb00 0%, #de9b00 100%);
    color: #E2F4DE;
    margin-top: 1.0416666vw;
    cursor: pointer;
    -webkit-transition: background .3s ease;
    transition: background .3s ease;
    font-size: 1.45833324vw; }
    .contact-formular .ctcbutton:hover {
      background: linear-gradient(240deg, #f1cb00 0%, #f1cb00 100%); }
    @media screen and (max-width: 767px) {
      .contact-formular .ctcbutton {
        font-size: 3.6458331vw;
        padding: 1.736111vw 5.208333vw; } }

.discover-intro {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: relative;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column; }
  @media screen and (max-width: 767px) {
    .discover-intro {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-flow: column;
              flex-flow: column;
      padding: 0; } }
  .discover-intro__video {
    border-radius: 0;
    width: 100%;
    height: 54vw;
    overflow: hidden; }
    .discover-intro__video .mob-title {
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      display: none; }
      @media screen and (max-width: 767px) {
        .discover-intro__video .mob-title {
          display: block; } }
    @media screen and (max-width: 767px) {
      .discover-intro__video {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
            -ms-flex-flow: column-reverse;
                flex-flow: column-reverse;
        height: 90vw; } }
    .discover-intro__video video {
      width: 100%;
      height: 100%;
      -o-object-fit: cover;
         object-fit: cover; }
  .discover-intro__col {
    width: 100%;
    height: 100%;
    padding: 0 2.0833332vw;
    position: absolute;
    left: 0;
    top: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column; }
    .discover-intro__col p {
      font-size: 1.59722212vw; }
      @media screen and (max-width: 767px) {
        .discover-intro__col p {
          font-size: 3.9930553vw; } }
    @media screen and (max-width: 767px) {
      .discover-intro__col {
        position: relative;
        width: 100%;
        padding: 0 5.208333vw;
        text-align: center;
        margin: 0 auto; }
        .discover-intro__col .discover-intro__title {
          display: none; } }
  .discover-intro .clc-logo {
    width: 13.61111024vw;
    height: 6.2499996vw;
    display: block;
    color: #5F9F75; }
    @media screen and (max-width: 767px) {
      .discover-intro .clc-logo {
        width: 34.0277756vw;
        height: 15.624999vw;
        margin: 0 auto; } }
  .discover-intro__title {
    font-size: 4.1666664vw;
    font-weight: 300;
    margin: 2em 0 1.5em;
    color: #ffffff;
    text-align: center; }
    @media screen and (max-width: 767px) {
      .discover-intro__title {
        font-size: 10.416666vw; } }
  .discover-intro__subtitles {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    margin-bottom: 1em; }
  .discover-intro__subtitle {
    font-size: 2.22222208vw;
    color: #ffffff;
    text-align: center;
    position: relative;
    width: 18vw;
    margin: 0 .5em; }
    .discover-intro__subtitle--desktop {
      display: block; }
      @media screen and (max-width: 767px) {
        .discover-intro__subtitle--desktop {
          display: none; } }
    .discover-intro__subtitle--mobile {
      display: none; }
      @media screen and (max-width: 767px) {
        .discover-intro__subtitle--mobile {
          display: block;
          margin-bottom: 1em; } }
    @media screen and (max-width: 767px) {
      .discover-intro__subtitle {
        font-size: 4.5138886vw;
        margin-top: 8.3333328vw;
        color: #000000;
        width: 60vw; } }
  .discover-intro__calendars {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap; }
  .discover-intro__calendar {
    text-align: center;
    position: relative;
    width: 18vw;
    margin: 0 .5em;
    background: rgba(252, 246, 240, 0.83);
    border-radius: 2.0833332vw;
    overflow: hidden;
    padding: 1.3888888vw; }
    @media screen and (max-width: 767px) {
      .discover-intro__calendar {
        width: 60vw;
        margin-bottom: 3.472222vw; } }
    @media screen and (max-width: 767px) {
      .discover-intro__calendar {
        padding: 3.472222vw; } }
    .discover-intro__calendar .button {
      display: -webkit-inline-box;
      display: -ms-inline-flexbox;
      display: inline-flex;
      padding: 0.6944444vw 2.0833332vw;
      border-radius: 3.472222vw;
      background: linear-gradient(240deg, #f1cb00 0%, #de9b00 100%);
      color: #E2F4DE;
      margin-top: 1.0416666vw;
      cursor: pointer;
      -webkit-transition: background .3s ease;
      transition: background .3s ease;
      font-size: 1.45833324vw; }
      .discover-intro__calendar .button:hover {
        background: linear-gradient(240deg, #f1cb00 0%, #f1cb00 100%); }
      @media screen and (max-width: 767px) {
        .discover-intro__calendar .button {
          font-size: 3.6458331vw;
          padding: 1.736111vw 5.208333vw; } }
    .discover-intro__calendar p {
      margin: 0; }
    .discover-intro__calendar .month {
      font-size: 1.45833324vw;
      font-weight: 300;
      margin-top: 0; }
      @media screen and (max-width: 767px) {
        .discover-intro__calendar .month {
          font-size: 4.5138886vw; } }
    .discover-intro__calendar .day {
      font-size: 1.45833324vw;
      font-weight: 300;
      margin-bottom: 0; }
      @media screen and (max-width: 767px) {
        .discover-intro__calendar .day {
          font-size: 4.5138886vw; } }
    .discover-intro__calendar .number {
      font-size: 7.6388884vw;
      font-weight: 100;
      margin: 0;
      line-height: 1; }
      @media screen and (max-width: 767px) {
        .discover-intro__calendar .number {
          font-size: 24.305554vw; } }
    .discover-intro__calendar .description {
      display: -webkit-inline-box;
      display: -ms-inline-flexbox;
      display: inline-flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      text-transform: uppercase;
      font-size: 0.97222216vw;
      letter-spacing: 0.05em;
      color: #000000;
      margin-bottom: 0;
      vertical-align: middle;
      color: #9C99A2; }
      @media screen and (max-width: 767px) {
        .discover-intro__calendar .description {
          font-size: 2.9513887vw; } }
      .discover-intro__calendar .description span {
        display: inline-block;
        width: 1.66666656vw;
        height: 0.97222216vw;
        vertical-align: middle;
        margin-left: .5em; }
        @media screen and (max-width: 767px) {
          .discover-intro__calendar .description span {
            width: 4.1666664vw;
            height: 2.4305554vw; } }

.discover {
  padding: 0 13.5416658vw 0;
  text-align: left; }
  @media screen and (max-width: 767px) {
    .discover {
      padding: 0 0 0; } }
  .discover__calendar {
    text-align: center;
    position: relative;
    width: 22vw;
    margin: 0 .5em;
    background: #FCF6F0;
    border-radius: 2.0833332vw;
    overflow: hidden;
    padding: 1.3888888vw; }
    @media screen and (max-width: 767px) {
      .discover__calendar {
        width: 60vw;
        margin-bottom: 3.472222vw; } }
    @media screen and (max-width: 767px) {
      .discover__calendar {
        padding: 3.472222vw; } }
    .discover__calendar .button {
      display: -webkit-inline-box;
      display: -ms-inline-flexbox;
      display: inline-flex;
      padding: 0.6944444vw 2.0833332vw;
      border-radius: 3.472222vw;
      background: linear-gradient(240deg, #f1cb00 0%, #de9b00 100%);
      color: #E2F4DE;
      margin-top: 1.0416666vw;
      cursor: pointer;
      -webkit-transition: background .3s ease;
      transition: background .3s ease;
      font-size: 1.45833324vw; }
      .discover__calendar .button:hover {
        background: linear-gradient(240deg, #f1cb00 0%, #f1cb00 100%); }
      @media screen and (max-width: 767px) {
        .discover__calendar .button {
          font-size: 3.6458331vw;
          padding: 1.736111vw 5.208333vw; } }
    .discover__calendar p {
      margin: 0; }
    .discover__calendar .month {
      font-size: 2.49999984vw;
      font-weight: 300; }
      @media screen and (max-width: 767px) {
        .discover__calendar .month {
          font-size: 6.2499996vw; } }
    .discover__calendar .number {
      font-size: 9.7222216vw;
      font-weight: 100;
      margin: 0;
      line-height: 1; }
      @media screen and (max-width: 767px) {
        .discover__calendar .number {
          font-size: 24.305554vw; } }
    .discover__calendar .description {
      display: -webkit-inline-box;
      display: -ms-inline-flexbox;
      display: inline-flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      text-transform: uppercase;
      font-size: 0.97222216vw;
      letter-spacing: 0.05em;
      color: #000000;
      margin-bottom: 0;
      vertical-align: middle;
      color: #9C99A2; }
      @media screen and (max-width: 767px) {
        .discover__calendar .description {
          font-size: 2.9513887vw; } }
      .discover__calendar .description span {
        display: inline-block;
        width: 1.66666656vw;
        height: 0.97222216vw;
        vertical-align: middle;
        margin-left: .5em; }
        @media screen and (max-width: 767px) {
          .discover__calendar .description span {
            width: 4.1666664vw;
            height: 2.4305554vw; } }
  .discover .card {
    text-align: center;
    position: relative;
    width: 65%;
    background: #FCF6F0;
    border-radius: 2.0833332vw;
    overflow: hidden; }
    @media screen and (max-width: 767px) {
      .discover .card {
        width: 100%;
        margin-top: 2em; } }
    .discover .card__content {
      position: absolute;
      left: 0;
      top: 0;
      right: 0;
      bottom: 0;
      color: #ffffff;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: end;
          -ms-flex-pack: end;
              justify-content: flex-end;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-flow: column;
              flex-flow: column;
      padding-bottom: 12%; }
      .discover .card__content h3 {
        font-size: 3.88888864vw;
        font-weight: 300;
        margin-bottom: .75em; }
        @media screen and (max-width: 767px) {
          .discover .card__content h3 {
            font-size: 9.7222216vw; } }
      .discover .card__content .video-button {
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        border-radius: 3.472222vw;
        border: 1px solid #ffffff;
        padding: 0.6944444vw 1.3888888vw;
        font-size: 1.45833324vw;
        font-weight: 500;
        -webkit-transition: background .5s ease;
        transition: background .5s ease; }
        .discover .card__content .video-button .playbut {
          display: inline-block;
          width: 1.3888888vw;
          height: 1.3888888vw;
          margin-left: 0.6944444vw; }
          @media screen and (max-width: 767px) {
            .discover .card__content .video-button .playbut {
              width: 2.7777776vw;
              height: 2.7777776vw;
              margin-left: 1.3888888vw; } }
        @media screen and (max-width: 767px) {
          .discover .card__content .video-button {
            font-size: 2.91666648vw;
            padding: 1.736111vw 6.944444vw; } }
        .discover .card__content .video-button:hover {
          background: #ffffff;
          color: #000000; }
  .discover .section-presentation {
    text-align: center;
    margin: 6.944444vw 0; }
    @media screen and (max-width: 767px) {
      .discover .section-presentation {
        margin: 0 0 8.3333328vw;
        padding: 12%; } }
    .discover .section-presentation h2 {
      font-size: 2.91666648vw;
      font-weight: bold; }
      @media screen and (max-width: 767px) {
        .discover .section-presentation h2 {
          font-size: 7.2916662vw; } }
    .discover .section-presentation .presentation {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: stretch;
          -ms-flex-align: stretch;
              align-items: stretch; }
      @media screen and (max-width: 767px) {
        .discover .section-presentation .presentation {
          display: block; } }
      .discover .section-presentation .presentation__step {
        width: 33%;
        padding: 2.0833332vw;
        border-left: 1px solid #00876A;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-flow: column;
                flex-flow: column;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center; }
        @media screen and (max-width: 767px) {
          .discover .section-presentation .presentation__step {
            width: 100%;
            border-left: none;
            padding: 5.208333vw;
            border-top: 1px solid #00876A; } }
        .discover .section-presentation .presentation__step:first-child {
          border: none; }
        .discover .section-presentation .presentation__step p {
          font-size: 2.49999984vw;
          margin: 0; }
          @media screen and (max-width: 767px) {
            .discover .section-presentation .presentation__step p {
              font-size: 6.2499996vw; } }
  .discover .section-logos {
    max-width: 80%;
    margin: 0 auto;
    text-align: center;
    font-size: 1.80555544vw;
    color: #9C99A2;
    font-weight: 500; }
    @media screen and (max-width: 767px) {
      .discover .section-logos {
        font-size: 4.5138886vw; }
        .discover .section-logos br {
          display: none; } }
    .discover .section-logos .logos {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      padding: 0 12%;
      margin: 3.472222vw 0; }
      @media screen and (max-width: 767px) {
        .discover .section-logos .logos {
          margin: 6.944444vw 0;
          padding: 0 2%; } }
      .discover .section-logos .logos figure:first-child {
        border-right: 1px solid #9C99A2; }
  .discover__info {
    max-width: 90%;
    margin: 0 auto;
    margin-top: 6.944444vw; }
    @media screen and (max-width: 767px) {
      .discover__info {
        max-width: 100%;
        padding: 0 5.208333vw;
        text-align: center; } }
    .discover__info .present {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-flow: row;
              flex-flow: row;
      max-width: 84%;
      margin: 3.472222vw auto 0; }
      @media screen and (max-width: 767px) {
        .discover__info .present {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-orient: vertical;
          -webkit-box-direction: reverse;
              -ms-flex-flow: column-reverse;
                  flex-flow: column-reverse; } }
      .discover__info .present .presentbox {
        width: 16vw;
        height: 16vw;
        border-radius: 2.0833332vw;
        overflow: hidden; }
        @media screen and (max-width: 767px) {
          .discover__info .present .presentbox {
            width: 50vw;
            height: 50vw;
            margin: 4.8611108vw auto 0; } }
        .discover__info .present .presentbox img {
          width: 100%;
          height: 100%;
          -o-object-fit: cover;
             object-fit: cover; }
    .discover__info .presenter {
      font-size: 1.80555544vw;
      font-weight: 500;
      text-align: center;
      padding: 0 0;
      margin-top: 2em;
      color: #9C99A2;
      text-align: left;
      -webkit-box-flex: 1;
          -ms-flex-positive: 1;
              flex-grow: 1;
      margin-left: 3.472222vw; }
      @media screen and (max-width: 767px) {
        .discover__info .presenter {
          font-size: 4.5138886vw; } }
    .discover__info h3 {
      width: 50%;
      padding-right: 2.0833332vw;
      font-size: 2.49999984vw;
      font-weight: 300; }
      @media screen and (max-width: 767px) {
        .discover__info h3 {
          width: 70%;
          margin: 0 auto 1em;
          font-size: 6.2499996vw; } }
    .discover__info .discover__calendar {
      width: 22.9166652vw; }
      @media screen and (max-width: 767px) {
        .discover__info .discover__calendar {
          width: 70%;
          margin: 0 auto 1em; } }
    .discover__info .calendar {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      width: 100%;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between; }
      @media screen and (max-width: 767px) {
        .discover__info .calendar {
          display: block; } }

.discover__videos {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  margin: 4em 0 2em; }
  .discover__videos .card {
    width: 48%; }
    @media screen and (max-width: 767px) {
      .discover__videos .card {
        width: 80%;
        margin: 0 auto 2em; } }
    .discover__videos .card__content {
      padding: 0 5% 5%;
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: flex-start; }
      .discover__videos .card__content h3 {
        font-size: 2.49999984vw;
        font-weight: 300;
        margin-bottom: .75em; }
        @media screen and (max-width: 767px) {
          .discover__videos .card__content h3 {
            font-size: 6.2499996vw; } }

.formular__header {
  text-align: center;
  border-top: 1px solid #00876A;
  margin-bottom: 2em;
  padding-top: 2em; }
  .formular__header h2 {
    font-size: 2.91666648vw;
    font-weight: bold; }
    @media screen and (max-width: 767px) {
      .formular__header h2 {
        font-size: 7.2916662vw; } }
  .formular__header p {
    font-size: 1.24999992vw; }
    @media screen and (max-width: 767px) {
      .formular__header p {
        font-size: 5.249999664vw; } }

.formular__form.is-sending .form {
  display: none; }

.formular__form.is-sent .sent-message {
  display: block; }

.formular__form.is-sent .form {
  display: none; }

.formular__form.is-error .error-message {
  display: block; }

.formular__form.is-error .form {
  display: none; }

.formular__form .sent-message {
  display: none; }

.formular__form .error-message {
  display: none;
  color: red; }

.formular__message {
  max-width: 50%;
  margin: 0 auto;
  text-align: center; }
  @media screen and (max-width: 767px) {
    .formular__message {
      max-width: 90%; } }

.formular__message {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 1em; }
  .is-sent .formular__message {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .is-sent .formular__message .sent-message {
      display: block; }
  .is-error .formular__message {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .is-error .formular__message .error-message {
      display: block; }

.formular .form {
  text-align: left;
  max-width: 50%;
  margin: 0 auto; }
  @media screen and (max-width: 767px) {
    .formular .form {
      max-width: 90%; } }
  .formular .form .radiogroup {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 1em;
    padding-left: 1em; }
  .formular .form .checkgroup {
    margin-top: 1em;
    padding-left: 1em; }
  .formular .form__action {
    margin-top: 2em; }
  .formular .form__label {
    display: block;
    font-size: 1.736111vw;
    margin-bottom: .2em;
    padding: 0 .3em; }
    @media screen and (max-width: 767px) {
      .formular .form__label {
        font-size: 4.3402775vw; } }
  .formular .form__field {
    margin-bottom: 1em; }
    .formular .form__field--hidden {
      display: none; }
    .formular .form__field label .required {
      color: red; }
    .formular .form__field .input {
      padding: 0 1em;
      width: 100%;
      height: 2.5em;
      -webkit-appearance: none;
         -moz-appearance: none;
              appearance: none;
      display: -webkit-inline-box;
      display: -ms-inline-flexbox;
      display: inline-flex;
      border-radius: 0;
      border: none;
      background: #ffffff;
      border-radius: 0;
      font-weight: 400;
      font-size: 1.736111vw; }
      .formular .form__field .input:focus {
        outline: none; }
      @media screen and (max-width: 767px) {
        .formular .form__field .input {
          font-size: 4.3402775vw; } }
    .formular .form__field textarea {
      width: 100%;
      height: 2.5em;
      font-weight: 400;
      height: 8em;
      font-size: 1.0416666vw;
      padding: 1em;
      border: none; }
      @media screen and (max-width: 767px) {
        .formular .form__field textarea {
          font-size: 2.6041665vw; } }
      .formular .form__field textarea:focus {
        outline: none; }
  .formular .form__submit {
    font-size: 1.736111vw;
    width: 100%;
    border-radius: 2em;
    color: #ffffff;
    background: #00876A;
    display: block;
    text-align: center;
    padding: .5em 0;
    font-weight: 600;
    width: 20.833332vw;
    margin: 0 auto; }
    @media screen and (max-width: 767px) {
      .formular .form__submit {
        font-size: 4.3402775vw;
        width: 41.666664vw; } }
  .formular .form__info {
    color: #00876A;
    font-size: 1.0416666vw;
    padding: 0 .3em; }
    @media screen and (max-width: 767px) {
      .formular .form__info {
        font-size: 2.6041665vw; } }
    .formular .form__info p {
      margin-bottom: 0; }

.radiolabel {
  display: block;
  position: relative;
  padding-left: 2.7777776vw;
  margin-right: 1em;
  margin-bottom: 0.6944444vw;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }
  @media screen and (max-width: 767px) {
    .radiolabel {
      padding-left: 8.3333328vw; } }
  .radiolabel input {
    position: absolute;
    opacity: 0;
    cursor: pointer; }
    .radiolabel input:checked ~ .checkmark, .radiolabel input:checked ~ .radiomark {
      background-color: #00876A; }
    .radiolabel input:checked ~ .checkmark:after, .radiolabel input:checked ~ .radiomark:after {
      display: block; }
  .radiolabel .checkmark, .radiolabel .radiomark {
    position: absolute;
    top: 0;
    left: 0;
    height: 1.736111vw;
    width: 1.736111vw;
    background-color: #ffffff;
    border-radius: 50%;
    display: block; }
    @media screen and (max-width: 767px) {
      .radiolabel .checkmark, .radiolabel .radiomark {
        height: 5.208333vw;
        width: 5.208333vw; } }
    .radiolabel .checkmark:after, .radiolabel .radiomark:after {
      content: "";
      position: absolute;
      display: none;
      top: 0.5208333vw;
      left: 0.5208333vw;
      width: 0.6944444vw;
      height: 0.6944444vw;
      border-radius: 50%;
      background: #ffffff; }
      @media screen and (max-width: 767px) {
        .radiolabel .checkmark:after, .radiolabel .radiomark:after {
          top: 1.5624999vw;
          left: 1.5624999vw;
          width: 2.0833332vw;
          height: 2.0833332vw; } }
  .radiolabel .radiomark {
    border-radius: 1px; }
    .radiolabel .radiomark:after {
      border-radius: 1px; }
  .radiolabel:hover input ~ .checkmark, .radiolabel:hover input ~ .radiomark {
    background-color: #00876A; }

.camping-intro {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  position: relative;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column; }
  @media screen and (max-width: 767px) {
    .camping-intro {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-flow: column;
              flex-flow: column;
      padding: 0; } }
  .camping-intro__cover {
    border-radius: 0;
    width: 100%;
    height: 54vw;
    overflow: hidden; }
    @media screen and (max-width: 767px) {
      .camping-intro__cover {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-flow: column;
                flex-flow: column;
        height: 120vw; } }
    .camping-intro__cover img {
      width: 100%;
      height: 100%;
      -o-object-fit: cover;
         object-fit: cover; }
  .camping-intro__col {
    width: 100%;
    height: 100%;
    padding: 0 2.0833332vw 2em;
    position: absolute;
    left: 0;
    top: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column; }
    .camping-intro__col p {
      font-size: 1.59722212vw; }
      @media screen and (max-width: 767px) {
        .camping-intro__col p {
          font-size: 3.9930553vw; } }
    @media screen and (max-width: 767px) {
      .camping-intro__col {
        width: 100%;
        padding: 0 5.208333vw;
        text-align: center;
        margin: 0 auto; } }
  .camping-intro .clc-logo {
    width: 13.61111024vw;
    height: 6.2499996vw;
    display: block;
    color: #5F9F75; }
    @media screen and (max-width: 767px) {
      .camping-intro .clc-logo {
        width: 34.0277756vw;
        height: 15.624999vw;
        margin: 0 auto; } }
  .camping-intro__title {
    font-size: 4.1666664vw;
    font-weight: 300;
    margin: 2em 0 .3em;
    color: #ffffff;
    text-align: center; }
    @media screen and (max-width: 767px) {
      .camping-intro__title {
        font-size: 10.416666vw; } }
  .camping-intro__subtitle {
    font-size: 1.80555544vw;
    color: #ffffff;
    text-align: center; }
    @media screen and (max-width: 767px) {
      .camping-intro__subtitle {
        font-size: 4.5138886vw; } }
  .camping-intro__calendars {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap; }
  .camping-intro__calendar {
    text-align: center;
    position: relative;
    width: 18vw;
    margin: 0 .5em;
    background: rgba(252, 246, 240, 0.83);
    border-radius: 2.0833332vw;
    overflow: hidden;
    padding: 1.3888888vw; }
    @media screen and (max-width: 767px) {
      .camping-intro__calendar {
        width: 70vw;
        margin-bottom: 3.472222vw;
        border-radius: 5.5555552vw; } }
    @media screen and (max-width: 767px) {
      .camping-intro__calendar {
        padding: 3.472222vw; } }
    .camping-intro__calendar .button {
      display: -webkit-inline-box;
      display: -ms-inline-flexbox;
      display: inline-flex;
      padding: 0.6944444vw 2.0833332vw;
      border-radius: 3.472222vw;
      background: linear-gradient(240deg, #f1cb00 0%, #de9b00 100%);
      color: #E2F4DE;
      margin-top: 1.0416666vw;
      cursor: pointer;
      -webkit-transition: background .3s ease;
      transition: background .3s ease;
      font-size: 1.45833324vw; }
      .camping-intro__calendar .button:hover {
        background: linear-gradient(240deg, #f1cb00 0%, #f1cb00 100%); }
      @media screen and (max-width: 767px) {
        .camping-intro__calendar .button {
          font-size: 3.6458331vw;
          padding: 1.736111vw 5.208333vw; } }
    .camping-intro__calendar p {
      margin: 0; }
    .camping-intro__calendar .month {
      font-size: 1.45833324vw;
      font-weight: 300;
      margin-top: 0; }
      @media screen and (max-width: 767px) {
        .camping-intro__calendar .month {
          font-size: 4.5138886vw; } }
    .camping-intro__calendar .day {
      font-size: 1.24999992vw;
      font-weight: 300;
      margin-bottom: 0;
      color: #000000;
      text-transform: uppercase; }
      @media screen and (max-width: 767px) {
        .camping-intro__calendar .day {
          font-size: 5.5555552vw; } }
    .camping-intro__calendar .number {
      font-size: 4.8611108vw;
      font-weight: 100;
      margin: 0 0 .3em 0;
      line-height: 1; }
      @media screen and (max-width: 767px) {
        .camping-intro__calendar .number {
          font-size: 17.36111vw; } }
    .camping-intro__calendar .description {
      display: -webkit-inline-box;
      display: -ms-inline-flexbox;
      display: inline-flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      text-transform: uppercase;
      font-size: 0.97222216vw;
      letter-spacing: 0.05em;
      color: #000000;
      margin-bottom: 0;
      vertical-align: middle;
      color: #9C99A2; }
      @media screen and (max-width: 767px) {
        .camping-intro__calendar .description {
          font-size: 2.9513887vw; } }
      .camping-intro__calendar .description span {
        display: inline-block;
        width: 1.66666656vw;
        height: 0.97222216vw;
        vertical-align: middle;
        margin-left: .5em; }
        @media screen and (max-width: 767px) {
          .camping-intro__calendar .description span {
            width: 4.1666664vw;
            height: 2.4305554vw; } }

.camping {
  padding: 0 1.3888888vw 0;
  text-align: left; }
  @media screen and (max-width: 767px) {
    .camping {
      padding: 0 0 0; } }
  .camping__boxes {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row;
            flex-flow: row;
    width: 100%; }
    @media screen and (max-width: 767px) {
      .camping__boxes {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-flow: column;
                flex-flow: column; } }
    .camping__boxes--center {
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
      .camping__boxes--center .camping__box {
        margin: 0 0.6944444vw;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-flow: column;
                flex-flow: column;
        height: 13.888888vw; }
        @media screen and (max-width: 767px) {
          .camping__boxes--center .camping__box {
            height: 31.249998vw;
            margin-bottom: 1em; } }
        .camping__boxes--center .camping__box h4 {
          margin: 0;
          font-size: 2.49999984vw;
          font-weight: 200; }
          @media screen and (max-width: 767px) {
            .camping__boxes--center .camping__box h4 {
              font-size: 6.2499996vw; } }
        .camping__boxes--center .camping__box h3 {
          font-size: 4.1666664vw;
          font-weight: 200;
          margin: 0; }
          @media screen and (max-width: 767px) {
            .camping__boxes--center .camping__box h3 {
              font-size: 10.416666vw; } }
        .camping__boxes--center .camping__box p {
          margin: 0; }
  .camping__box {
    text-align: center;
    position: relative;
    width: 24vw;
    height: 22vw;
    margin: 0 .5em;
    background: rgba(252, 246, 240, 0.83);
    border-radius: 2.0833332vw;
    overflow: hidden;
    padding: 0.6944444vw; }
    @media screen and (max-width: 767px) {
      .camping__box {
        border-radius: 4.1666664vw; } }
    .camping__box--center {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
    .camping__box h3 {
      font-size: 2.49999984vw;
      font-weight: 300; }
      @media screen and (max-width: 767px) {
        .camping__box h3 {
          font-size: 6.2499996vw; } }
    .camping__box p {
      font-size: 1.80555544vw;
      font-weight: 500;
      color: #9C99A2; }
      @media screen and (max-width: 767px) {
        .camping__box p {
          font-size: 4.5138886vw; } }
    @media screen and (max-width: 767px) {
      .camping__box {
        width: 70vw;
        margin-bottom: 3.472222vw;
        height: 55vw; } }
    @media screen and (max-width: 767px) {
      .camping__box {
        padding: 3.472222vw 6.944444vw; } }
  .camping .cols {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap; }
    @media screen and (max-width: 767px) {
      .camping .cols {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-flow: column;
                flex-flow: column; } }
    .camping .cols .col-header {
      text-align: center;
      width: 100%; }
    .camping .cols .col {
      width: 40%;
      text-align: left; }
      @media screen and (max-width: 767px) {
        .camping .cols .col {
          width: 80%; } }
      .camping .cols .col h2 {
        margin-bottom: 0; }
      .camping .cols .col ul {
        margin: 1.5em 0 0 0;
        padding: 0; }
        .camping .cols .col ul li {
          color: #9C99A2;
          list-style: none;
          padding-bottom: .75em;
          position: relative;
          margin-bottom: .75em; }
          .camping .cols .col ul li:last-child:after {
            display: none; }
          .camping .cols .col ul li:after {
            content: "";
            display: block;
            height: 1px;
            background: #D8D8D8;
            position: absolute;
            width: 100%;
            left: 0;
            bottom: 0; }
  .camping .section-footer {
    text-align: left;
    padding: 0 16.6666656vw;
    margin-bottom: 5em; }
    .camping .section-footer__content {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      background: rgba(252, 246, 240, 0.83);
      border-radius: 2.0833332vw;
      padding: 2.0833332vw; }
      @media screen and (max-width: 767px) {
        .camping .section-footer__content {
          display: block;
          text-align: center;
          padding: 5.5555552vw 2.7777776vw; } }
    @media screen and (max-width: 767px) {
      .camping .section-footer {
        padding: 0 8.3333328vw;
        margin-bottom: 2em; } }
    .camping .section-footer p {
      color: #9C99A2;
      font-weight: 500;
      max-width: 60%;
      margin: 0; }
      @media screen and (max-width: 767px) {
        .camping .section-footer p {
          max-width: 80%;
          text-align: center;
          margin: 0 auto 1em; } }
    .camping .section-footer .button {
      display: -webkit-inline-box;
      display: -ms-inline-flexbox;
      display: inline-flex;
      padding: 0.6944444vw 2.0833332vw;
      border-radius: 3.472222vw;
      background: linear-gradient(240deg, #f1cb00 0%, #de9b00 100%);
      color: #E2F4DE;
      margin-top: 1.0416666vw;
      cursor: pointer;
      -webkit-transition: background .3s ease;
      transition: background .3s ease;
      font-size: 1.45833324vw; }
      .camping .section-footer .button:hover {
        background: linear-gradient(240deg, #f1cb00 0%, #f1cb00 100%); }
      @media screen and (max-width: 767px) {
        .camping .section-footer .button {
          font-size: 3.6458331vw;
          padding: 1.736111vw 5.208333vw; } }
  .camping .camping-icons {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 5.5555552vw; }
    @media screen and (max-width: 767px) {
      .camping .camping-icons {
        -ms-flex-flow: wrap;
            flex-flow: wrap;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center; } }
    .camping .camping-icons .camping-icon {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-flow: column;
              flex-flow: column;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between; }
      @media screen and (max-width: 767px) {
        .camping .camping-icons .camping-icon {
          width: 33%;
          margin-bottom: 2em; } }
      .camping .camping-icons .camping-icon figure {
        height: 12.4999992vw;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center; }
        @media screen and (max-width: 767px) {
          .camping .camping-icons .camping-icon figure {
            height: 17.36111vw; } }
        .camping .camping-icons .camping-icon figure img {
          -webkit-transform: scale(50%);
                  transform: scale(50%);
          width: 100%;
          height: 100%;
          -o-object-fit: contain;
             object-fit: contain; }
          @media screen and (max-width: 767px) {
            .camping .camping-icons .camping-icon figure img {
              -webkit-transform: scale(75%);
                      transform: scale(75%); } }
      .camping .camping-icons .camping-icon span {
        font-weight: 700;
        color: #9C99A2;
        text-transform: uppercase; }
        @media screen and (max-width: 767px) {
          .camping .camping-icons .camping-icon span {
            font-size: 3.8194442vw; } }
  .camping .camping-days {
    text-align: left;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    padding: 0 6.944444vw; }
    @media screen and (max-width: 767px) {
      .camping .camping-days {
        padding: 0; } }
    .camping .camping-days .day {
      width: 30%;
      margin: 0 .75%;
      position: relative;
      padding: 0.6944444vw 0 0 1.3888888vw;
      margin-bottom: 1em; }
      @media screen and (max-width: 767px) {
        .camping .camping-days .day {
          padding: 0.6944444vw 0 0 3.472222vw;
          width: 90%;
          margin-bottom: 4em; } }
      .camping .camping-days .day:before {
        content: "";
        display: block;
        height: 100%;
        background: #D8D8D8;
        position: absolute;
        width: 1px;
        left: 0;
        top: 0; }
      .camping .camping-days .day:nth-child(3n+1):before {
        display: none; }
        @media screen and (max-width: 767px) {
          .camping .camping-days .day:nth-child(3n+1):before {
            display: block; } }
      .camping .camping-days .day__name {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        font-size: 0.97222216vw;
        color: #000000;
        font-weight: 400;
        text-transform: uppercase; }
        @media screen and (max-width: 767px) {
          .camping .camping-days .day__name {
            font-size: 2.4305554vw; } }
        .camping .camping-days .day__name:before {
          content: "";
          display: block;
          width: 1.3888888vw;
          height: 1.3888888vw;
          border-radius: 0.6944444vw;
          background: -webkit-gradient(linear, left top, left bottom, from(#e6b000), to(#efc600));
          background: linear-gradient(180deg, #e6b000 0%, #efc600 100%);
          margin-right: .5em; }
          @media screen and (max-width: 767px) {
            .camping .camping-days .day__name:before {
              width: 3.472222vw;
              height: 3.472222vw;
              border-radius: 1.736111vw; } }
      .camping .camping-days .day h3 {
        font-size: 2.49999984vw;
        font-weight: 400; }
        @media screen and (max-width: 767px) {
          .camping .camping-days .day h3 {
            font-size: 6.2499996vw; } }
        .camping .camping-days .day h3 span {
          color: #9C99A2;
          display: block; }
      .camping .camping-days .day p {
        color: #9C99A2;
        font-size: 1.80555544vw;
        font-weight: 500; }
        @media screen and (max-width: 767px) {
          .camping .camping-days .day p {
            font-size: 4.5138886vw; } }
        .camping .camping-days .day p:last-child {
          margin-bottom: 0; }
  .camping .partner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    text-transform: uppercase;
    font-size: 0.97222216vw;
    color: #000000;
    margin: 5.5555552vw auto 0; }
    @media screen and (max-width: 767px) {
      .camping .partner {
        font-size: 2.4305554vw;
        margin: 12.4999992vw auto 0; } }
    .camping .partner p {
      margin: 0 1em 0 0;
      text-align: right; }
    .camping .partner img {
      width: 13.1944436vw;
      height: 6.944444vw; }
      @media screen and (max-width: 767px) {
        .camping .partner img {
          width: 32.986109vw;
          height: 17.36111vw; } }
  .camping .bus {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 2.0833332vw 17.36111vw; }
    @media screen and (max-width: 767px) {
      .camping .bus {
        display: block; } }
    .camping .bus__table {
      width: 60%; }
      @media screen and (max-width: 767px) {
        .camping .bus__table {
          width: 100%; } }
    .camping .bus__image {
      width: 40%;
      padding-top: 3.472222vw; }
      @media screen and (max-width: 767px) {
        .camping .bus__image {
          width: 100%;
          padding-top: 10.416666vw; } }
      .camping .bus__image img {
        width: 100%; }
        @media screen and (max-width: 767px) {
          .camping .bus__image img {
            width: 100%; } }
    .camping .bus__title {
      font-size: 2.91666648vw;
      font-weight: 700;
      margin-bottom: .2em; }
      @media screen and (max-width: 767px) {
        .camping .bus__title {
          font-size: 7.2916662vw; } }
    .camping .bus__subtitle {
      font-size: 1.80555544vw;
      color: #000000; }
      @media screen and (max-width: 767px) {
        .camping .bus__subtitle {
          font-size: 4.5138886vw; } }
    .camping .bus__info {
      font-size: 0.76388884vw;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      color: #000000; }
      @media screen and (max-width: 767px) {
        .camping .bus__info {
          font-size: 3.472222vw;
          -webkit-box-align: start;
              -ms-flex-align: start;
                  align-items: flex-start; } }
    .camping .bus .pin {
      width: 0.62499996vw;
      height: 0.83333328vw;
      display: inline-block;
      margin-right: 0.48611108vw; }
      @media screen and (max-width: 767px) {
        .camping .bus .pin {
          width: 4.1666664vw;
          height: 5.5555552vw;
          margin-top: .3em;
          margin-right: 2.0833332vw; } }
  .camping .table {
    border-collapse: collapse;
    margin: 25px 0;
    font-size: 0.9em;
    font-family: sans-serif;
    max-width: 80%; }
    @media screen and (max-width: 767px) {
      .camping .table {
        max-width: 100%; } }
    .camping .table th, .camping .table td {
      padding: 0.97222216vw 0;
      width: 45%; }
      @media screen and (max-width: 767px) {
        .camping .table th, .camping .table td {
          padding: 2.7777776vw 0; } }
      .camping .table th:first-child, .camping .table td:first-child {
        width: 55%; }
    .camping .table th {
      color: #000000;
      font-weight: bold;
      text-transform: uppercase;
      font-size: 0.97222216vw;
      letter-spacing: 0.05em; }
      @media screen and (max-width: 767px) {
        .camping .table th {
          font-size: 2.9513887vw; } }
      .camping .table th span {
        display: block;
        font-weight: normal; }
    .camping .table .arrow {
      width: 1.11111104vw;
      height: 1.11111104vw; }
    .camping .table td {
      font-size: 1.80555544vw;
      font-weight: 300; }
      @media screen and (max-width: 767px) {
        .camping .table td {
          font-size: 4.5138886vw; } }
    .camping .table tr {
      border-bottom: 1px solid #9C99A2; }
    .camping .table tr:last-of-type {
      border: none; }
  .camping__calendar {
    text-align: center;
    position: relative;
    width: 22vw;
    margin: 0 .5em;
    background: #FCF6F0;
    border-radius: 2.0833332vw;
    overflow: hidden;
    padding: 1.3888888vw; }
    @media screen and (max-width: 767px) {
      .camping__calendar {
        width: 60vw;
        margin-bottom: 3.472222vw; } }
    @media screen and (max-width: 767px) {
      .camping__calendar {
        padding: 3.472222vw; } }
    .camping__calendar .button {
      display: -webkit-inline-box;
      display: -ms-inline-flexbox;
      display: inline-flex;
      padding: 0.6944444vw 2.0833332vw;
      border-radius: 3.472222vw;
      background: linear-gradient(240deg, #f1cb00 0%, #de9b00 100%);
      color: #E2F4DE;
      margin-top: 1.0416666vw;
      cursor: pointer;
      -webkit-transition: background .3s ease;
      transition: background .3s ease;
      font-size: 1.45833324vw; }
      .camping__calendar .button:hover {
        background: linear-gradient(240deg, #f1cb00 0%, #f1cb00 100%); }
      @media screen and (max-width: 767px) {
        .camping__calendar .button {
          font-size: 3.6458331vw;
          padding: 1.736111vw 5.208333vw; } }
    .camping__calendar p {
      margin: 0; }
    .camping__calendar .month {
      font-size: 2.49999984vw;
      font-weight: 300; }
      @media screen and (max-width: 767px) {
        .camping__calendar .month {
          font-size: 6.2499996vw; } }
    .camping__calendar .number {
      font-size: 9.7222216vw;
      font-weight: 100;
      margin: 0;
      line-height: 1; }
      @media screen and (max-width: 767px) {
        .camping__calendar .number {
          font-size: 24.305554vw; } }
    .camping__calendar .description {
      display: -webkit-inline-box;
      display: -ms-inline-flexbox;
      display: inline-flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      text-transform: uppercase;
      font-size: 0.97222216vw;
      letter-spacing: 0.05em;
      color: #000000;
      margin-bottom: 0;
      vertical-align: middle;
      color: #9C99A2; }
      @media screen and (max-width: 767px) {
        .camping__calendar .description {
          font-size: 2.9513887vw; } }
      .camping__calendar .description span {
        display: inline-block;
        width: 1.66666656vw;
        height: 0.97222216vw;
        vertical-align: middle;
        margin-left: .5em; }
        @media screen and (max-width: 767px) {
          .camping__calendar .description span {
            width: 4.1666664vw;
            height: 2.4305554vw; } }
  .camping .section-camping {
    text-align: center;
    margin: 5.5555552vw 0; }
    .camping .section-camping--pad {
      padding: 0 20.833332vw; }
    @media screen and (max-width: 767px) {
      .camping .section-camping {
        margin: 5.5555552vw 0;
        padding: 6%; } }
    .camping .section-camping h2 {
      font-size: 2.91666648vw;
      font-weight: bold; }
      @media screen and (max-width: 767px) {
        .camping .section-camping h2 {
          font-size: 7.2916662vw; } }
      .camping .section-camping h2.br br {
        display: none; }
      @media screen and (max-width: 767px) {
        .camping .section-camping h2.br br {
          display: block; } }
      @media screen and (max-width: 767px) {
        .camping .section-camping h2.nobr br {
          display: none; } }
    .camping .section-camping__subtitle {
      margin-bottom: 0; }
    .camping .section-camping__desc {
      color: #9C99A2;
      font-weight: 500;
      max-width: 60%;
      margin: 0 auto 2em; }
      .camping .section-camping__desc--nopad {
        margin-bottom: 0; }
      @media screen and (max-width: 767px) {
        .camping .section-camping__desc {
          max-width: 100%; } }
  .camping .section-presentation {
    text-align: center;
    margin: 3.472222vw 0; }
    @media screen and (max-width: 767px) {
      .camping .section-presentation {
        margin: 6.944444vw 0;
        padding: 0 10%; } }
    .camping .section-presentation h2 {
      font-size: 2.91666648vw;
      font-weight: bold; }
      .camping .section-presentation h2.section-presentation__title {
        font-size: 3.472222vw;
        font-weight: bold; }
        @media screen and (max-width: 767px) {
          .camping .section-presentation h2.section-presentation__title {
            font-size: 7.8124995vw; } }
      @media screen and (max-width: 767px) {
        .camping .section-presentation h2 {
          font-size: 7.2916662vw; } }
  .camping .section-logos {
    max-width: 80%;
    margin: 0 auto;
    text-align: center;
    font-size: 1.80555544vw;
    color: #9C99A2;
    font-weight: 500; }
    @media screen and (max-width: 767px) {
      .camping .section-logos {
        font-size: 4.5138886vw; }
        .camping .section-logos br {
          display: none; } }
    .camping .section-logos .logos {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      padding: 0 12%;
      margin: 3.472222vw 0; }
      @media screen and (max-width: 767px) {
        .camping .section-logos .logos {
          margin: 6.944444vw 0;
          padding: 0 2%; } }
      .camping .section-logos .logos figure:first-child {
        border-right: 1px solid #9C99A2; }
  .camping__info {
    max-width: 70%;
    margin: 0 auto;
    margin-top: 6.944444vw; }
    @media screen and (max-width: 767px) {
      .camping__info {
        max-width: 100%;
        padding: 0 5.208333vw;
        text-align: center; } }
    .camping__info .present {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-flow: row;
              flex-flow: row;
      max-width: 84%;
      margin: 3.472222vw auto 0; }
      @media screen and (max-width: 767px) {
        .camping__info .present {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-orient: vertical;
          -webkit-box-direction: reverse;
              -ms-flex-flow: column-reverse;
                  flex-flow: column-reverse; } }
      .camping__info .present .presentbox {
        width: 16vw;
        height: 16vw;
        border-radius: 2.0833332vw;
        overflow: hidden; }
        @media screen and (max-width: 767px) {
          .camping__info .present .presentbox {
            width: 50vw;
            height: 50vw;
            margin: 4.8611108vw auto 0; } }
        .camping__info .present .presentbox img {
          width: 100%;
          height: 100%;
          -o-object-fit: cover;
             object-fit: cover; }
    .camping__info .presenter {
      font-size: 1.80555544vw;
      font-weight: 500;
      text-align: center;
      padding: 0 0;
      margin-top: 2em;
      color: #9C99A2;
      text-align: left;
      -webkit-box-flex: 1;
          -ms-flex-positive: 1;
              flex-grow: 1;
      margin-left: 3.472222vw; }
      @media screen and (max-width: 767px) {
        .camping__info .presenter {
          font-size: 4.5138886vw; } }
    .camping__info h3 {
      width: 50%;
      padding-right: 2.0833332vw;
      font-size: 2.49999984vw;
      font-weight: 300; }
      @media screen and (max-width: 767px) {
        .camping__info h3 {
          width: 70%;
          margin: 0 auto 1em;
          font-size: 6.2499996vw; } }
    .camping__info .discover__calendar {
      width: 22.9166652vw; }
      @media screen and (max-width: 767px) {
        .camping__info .discover__calendar {
          width: 70%;
          margin: 0 auto; } }
    .camping__info .calendar {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      width: 100%;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
      @media screen and (max-width: 767px) {
        .camping__info .calendar {
          display: block; } }

.summer {
  background-color: #F3EB92; }
  .summer__cover {
    position: relative; }
    @media screen and (max-width: 767px) {
      .summer__cover {
        height: 120vw; }
        .summer__cover img {
          width: 100%;
          height: 100%;
          -o-object-fit: cover;
             object-fit: cover; } }
  .summer .cta {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    @media screen and (max-width: 767px) {
      .summer .cta {
        margin-top: 3em; } }
  .summer .school-button {
    border-radius: 1.3888888vw;
    background: -webkit-gradient(linear, left top, left bottom, from(#F1CB00), to(#F8B133));
    background: linear-gradient(180deg, #F1CB00 0%, #F8B133 100%);
    color: #FCF6F0;
    font-size: 1.45833324vw;
    font-family: "SF Compact", serif;
    padding: .25em 1em;
    width: auto;
    font-weight: 400;
    -webkit-transition: background .5s ease;
    transition: background .5s ease; }
    .summer .school-button:hover {
      background: -webkit-gradient(linear, left top, left bottom, from(#5F9F75), to(#00876A));
      background: linear-gradient(180deg, #5F9F75 0%, #00876A 100%); }
    @media screen and (max-width: 767px) {
      .summer .school-button {
        border-radius: 3.472222vw;
        font-size: 4.1666664vw; } }
  .summer .language {
    position: absolute;
    right: 0;
    top: 8.680555vw;
    z-index: 2;
    background-color: #DD9A24;
    color: #ffffff;
    font-weight: 700;
    padding: .25em 1em; }
    @media screen and (max-width: 767px) {
      .summer .language {
        top: 15.2777768vw; } }
  .summer .sbox {
    display: block;
    margin: 0 auto;
    width: 50%;
    position: absolute;
    left: 25%;
    bottom: -6.944444vw;
    text-align: center; }
    @media screen and (max-width: 767px) {
      .summer .sbox {
        left: 3%;
        width: 93%;
        bottom: -52.08333vw; } }
  .summer .stext {
    position: absolute;
    bottom: 27.777776vw;
    display: block;
    width: 100%;
    text-align: center;
    width: 70%;
    left: 15%; }
    @media screen and (max-width: 767px) {
      .summer .stext {
        bottom: 20.833332vw;
        width: 100%;
        left: 0%; } }
    .summer .stext span {
      display: block;
      font-size: 2.0833332vw;
      color: #ffffff;
      font-weight: 400; }
      @media screen and (max-width: 767px) {
        .summer .stext span {
          font-size: 2.7777776vw; } }
  .summer .slogo {
    position: absolute;
    left: 8.680555vw;
    top: 8.680555vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    width: 62.499996vw; }
    @media screen and (max-width: 767px) {
      .summer .slogo {
        width: 90%;
        left: 5%;
        top: 10%;
        display: block; } }
    .summer .slogo--thanks {
      width: 69.44444vw; }
      @media screen and (max-width: 767px) {
        .summer .slogo--thanks {
          width: auto; } }
    .summer .slogo__logo {
      width: 18.7499988vw;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      padding: 2.22222208vw 1em;
      background-color: #ffffff; }
      @media screen and (max-width: 767px) {
        .summer .slogo__logo {
          width: 35%;
          padding: 2.0833332vw 1em; } }
      .summer .slogo__logo svg {
        width: 15.83333232vw;
        height: 7.43055508vw; }
        @media screen and (max-width: 767px) {
          .summer .slogo__logo svg {
            width: 22.77777632vw;
            height: 10.689570466vw; } }
    .summer .slogo__title {
      font-size: 3.33333312vw;
      letter-spacing: -.04em;
      color: #224A34; }
      @media screen and (max-width: 767px) {
        .summer .slogo__title {
          font-size: 6.2499996vw; } }
      .summer .slogo__title span {
        display: inline-block;
        background: #DD9A24;
        padding: 0 .3em;
        line-height: 1.2;
        font-weight: 400; }
        .summer .slogo__title span.white {
          color: #ffffff;
          display: inline-block; }
  .summer h2.large {
    text-align: center;
    color: #000000;
    font-size: 3.472222vw;
    font-weight: 700;
    margin-top: 5.5555552vw;
    margin-bottom: 3.472222vw; }
    @media screen and (max-width: 767px) {
      .summer h2.large {
        margin-top: 13.888888vw;
        font-size: 6.2499996vw; } }
  .summer .schoolinfo {
    color: #000000;
    font-size: 1.80555544vw;
    padding: .5em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    @media screen and (max-width: 767px) {
      .summer .schoolinfo {
        display: block;
        padding: 0 .5em;
        font-size: 3.472222vw;
        border-radius: 4.3402775vw; } }
    .summer .schoolinfo .col {
      width: 33%;
      padding: .75em; }
      @media screen and (max-width: 767px) {
        .summer .schoolinfo .col {
          width: 100%;
          padding: 0 .75em; } }
      .summer .schoolinfo .col h3 {
        font-size: 2.49999984vw;
        color: #DD9A24;
        font-weight: 700;
        margin: 1rem 0; }
        @media screen and (max-width: 767px) {
          .summer .schoolinfo .col h3 {
            font-size: 5.208333vw; } }
      .summer .schoolinfo .col img {
        display: inline-block;
        width: auto;
        padding-right: 1rem;
        vertical-align: bottom; }
  .summer .schoolbox {
    border-radius: 1.736111vw;
    background: #FCF6F0;
    color: #DD9A24;
    font-size: 2.49999984vw;
    padding: .5em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    @media screen and (max-width: 767px) {
      .summer .schoolbox {
        display: block;
        padding: 1em .5em;
        font-size: 6.2499996vw;
        border-radius: 4.3402775vw; } }
    .summer .schoolbox .col {
      width: 50%;
      padding: .75em; }
      @media screen and (max-width: 767px) {
        .summer .schoolbox .col {
          width: 100%;
          padding: 0 .75em; } }
    @media screen and (max-width: 767px) {
      .summer .schoolbox__image {
        width: 100%; } }
    .summer .schoolbox__img {
      margin: 1em; }
    .summer .schoolbox__content {
      text-align: center;
      font-size: 1.3888888vw;
      padding: 3.5em; }
      .summer .schoolbox__content h2 {
        font-size: 4.8611108vw;
        font-weight: 500; }
      .summer .schoolbox__content .schoolbox__info {
        font-size: 2.0833332vw;
        font-weight: 300; }
      @media screen and (max-width: 767px) {
        .summer .schoolbox__content {
          width: 100%;
          font-size: 3.472222vw; } }
  .summer .program {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    padding: 5% 5% 5% 2%; }
    .summer .program__title {
      width: 100%;
      text-align: center; }
      .summer .program__title h2 {
        font-size: 4.1666664vw;
        font-weight: 700;
        color: #5F9F75; }
        @media screen and (max-width: 767px) {
          .summer .program__title h2 {
            font-size: 10.416666vw; } }
    .summer .program__col {
      width: 48%; }
      @media screen and (max-width: 767px) {
        .summer .program__col {
          width: 100%; } }
    .summer .program ul {
      margin: 0;
      padding: 0 1em; }
    .summer .program li {
      list-style: none;
      font-size: 1.66666656vw;
      color: #9C99A2;
      font-weight: 500;
      height: 6em;
      padding-top: 1em;
      border-bottom: 1px solid #9C99A2;
      position: relative; }
      @media screen and (max-width: 767px) {
        .summer .program li {
          font-size: 4.1666664vw;
          height: auto; } }
      .summer .program li:last-child {
        border: none; }
      .summer .program li:before {
        content: "";
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        width: .5em;
        height: .5em;
        border-radius: 50%;
        background: -webkit-gradient(linear, left top, left bottom, from(#F1CB00), to(#F8B133));
        background: linear-gradient(180deg, #F1CB00 0%, #F8B133 100%);
        margin-left: -.75em;
        margin-bottom: .2em;
        position: absolute;
        left: 0;
        top: 1.4em; }
      .summer .program li span {
        color: #5F9F75;
        font-size: 1.80555544vw; }
        @media screen and (max-width: 767px) {
          .summer .program li span {
            font-size: 4.5138886vw; } }
      .summer .program li p {
        max-width: 88%; }
        @media screen and (max-width: 767px) {
          .summer .program li p {
            max-width: 98%; } }
  .summer .registration {
    background-color: #9C99A2;
    color: #ffffff;
    padding: 5em 2.6041665vw; }
    @media screen and (max-width: 767px) {
      .summer .registration {
        padding: 0 3.472222vw 5em; } }
    .summer .registration__title {
      width: 45%; }
      @media screen and (max-width: 767px) {
        .summer .registration__title {
          width: 100%; } }
      .summer .registration__title h2 {
        color: #000000;
        font-size: 4.1666664vw;
        font-weight: 700;
        margin: 0 0 .5em 0; }
        @media screen and (max-width: 767px) {
          .summer .registration__title h2 {
            font-size: 10.416666vw; } }
      .summer .registration__title p {
        margin-bottom: 0.1rem; }
    .summer .registration__subtitle {
      color: #ffffff;
      max-width: 60%; }
      @media screen and (max-width: 767px) {
        .summer .registration__subtitle {
          max-width: 90%; } }
    .summer .registration__header {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      text-align: left; }
      @media screen and (max-width: 767px) {
        .summer .registration__header {
          padding-top: 3em;
          -webkit-box-orient: vertical;
          -webkit-box-direction: reverse;
              -ms-flex-flow: column-reverse;
                  flex-flow: column-reverse; } }
    .summer .registration__offer .offer {
      border-radius: 1.736111vw;
      background: -webkit-gradient(linear, left top, left bottom, from(#F1CB00), to(#F8B133));
      background: linear-gradient(180deg, #F1CB00 0%, #F8B133 100%);
      -webkit-transform: rotate(-12deg);
              transform: rotate(-12deg);
      color: #000000;
      padding: 1em 2em;
      text-align: center; }
      @media screen and (max-width: 767px) {
        .summer .registration__offer .offer {
          border-radius: 4.3402775vw;
          margin-bottom: 2em; } }
      .summer .registration__offer .offer__price {
        font-size: 3.472222vw;
        margin: 0;
        font-weight: 700; }
        @media screen and (max-width: 767px) {
          .summer .registration__offer .offer__price {
            font-size: 8.680555vw; } }
        .summer .registration__offer .offer__price--del {
          font-weight: 100;
          position: relative;
          margin-bottom: .2em; }
          .summer .registration__offer .offer__price--del:after {
            content: "";
            display: block;
            width: 100%;
            height: 1px;
            background-color: currentColor;
            position: absolute;
            top: 50%;
            left: 0; }
      .summer .registration__offer .offer__include {
        text-transform: uppercase;
        font-weight: 300;
        letter-spacing: .2em;
        font-size: 1.11111104vw; }
        @media screen and (max-width: 767px) {
          .summer .registration__offer .offer__include {
            font-size: 2.7777776vw; } }
        .summer .registration__offer .offer__include:after, .summer .registration__offer .offer__include:before {
          content: "—"; }
    .summer .registration .included {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: stretch;
          -ms-flex-align: stretch;
              align-items: stretch;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-flow: row wrap;
              flex-flow: row wrap;
      margin: 2em  0; }
      @media screen and (max-width: 767px) {
        .summer .registration .included {
          margin-bottom: 0;
          -webkit-box-pack: justify;
              -ms-flex-pack: justify;
                  justify-content: space-between; } }
      .summer .registration .included__box {
        width: 19.5%;
        border-radius: 1.736111vw;
        background-color: #FCF6F0;
        color: #000000;
        font-size: 1.3888888vw;
        text-align: center;
        padding: .75em;
        margin: .75em; }
        @media screen and (max-width: 767px) {
          .summer .registration .included__box {
            width: 49%;
            border-radius: 4.3402775vw;
            font-size: 3.472222vw;
            margin: 0;
            margin-bottom: 2%; } }
        .summer .registration .included__box span {
          font-size: 1.66666656vw; }
          @media screen and (max-width: 767px) {
            .summer .registration .included__box span {
              font-size: 4.1666664vw; } }
        .summer .registration .included__box p {
          margin: 0; }
        .summer .registration .included__box h3 {
          font-size: 2.49999984vw;
          font-weight: 700;
          color: #DD9A24; }
          @media screen and (max-width: 767px) {
            .summer .registration .included__box h3 {
              font-size: 6.2499996vw; } }
  .summer .theme__title {
    font-size: 4.1666664vw;
    font-weight: 700;
    color: #5F9F75;
    text-align: center; }
    @media screen and (max-width: 767px) {
      .summer .theme__title {
        font-size: 10.416666vw; }
        .summer .theme__title br {
          display: none; } }
  .summer .theme__action {
    text-align: center; }
  .summer .theme__row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    padding: 0 3em;
    margin-bottom: 2em; }
    @media screen and (max-width: 767px) {
      .summer .theme__row {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
            -ms-flex-flow: column-reverse;
                flex-flow: column-reverse;
        padding: 0 1em; } }
    .summer .theme__row:nth-child(odd) {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
          -ms-flex-flow: row-reverse wrap;
              flex-flow: row-reverse wrap; }
      .summer .theme__row:nth-child(odd) .theme__col--img {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: end;
            -ms-flex-pack: end;
                justify-content: flex-end; }
        @media screen and (max-width: 767px) {
          .summer .theme__row:nth-child(odd) .theme__col--img {
            -webkit-box-pack: center;
                -ms-flex-pack: center;
                    justify-content: center; } }
      @media screen and (max-width: 767px) {
        .summer .theme__row:nth-child(odd) {
          -webkit-box-orient: vertical;
          -webkit-box-direction: reverse;
              -ms-flex-flow: column-reverse;
                  flex-flow: column-reverse; } }
  .summer .theme__col {
    width: 50%;
    color: #9C99A2;
    font-size: 1.80555544vw; }
    @media screen and (max-width: 767px) {
      .summer .theme__col {
        width: 100%;
        font-size: 4.5138886vw; } }
    .summer .theme__col img {
      width: 16.6666656vw; }
      @media screen and (max-width: 767px) {
        .summer .theme__col img {
          width: 41.666664vw; } }
    .summer .theme__col h3 {
      font-size: 2.49999984vw;
      color: #5F9F75;
      margin-bottom: .3em; }
      @media screen and (max-width: 767px) {
        .summer .theme__col h3 {
          font-size: 6.2499996vw; } }
    .summer .theme__col--img {
      padding: 2em 4em 0; }

.summer-container {
  padding: 0 2.6041665vw;
  background-color: #F3EB92;
  margin-top: 13.888888vw;
  margin-bottom: 4.8611108vw; }
  @media screen and (max-width: 767px) {
    .summer-container {
      padding: 0 3.472222vw;
      margin-top: 60.763885vw; } }

.school-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: auto;
  -webkit-column-gap: 1.3888888vw;
     -moz-column-gap: 1.3888888vw;
          column-gap: 1.3888888vw;
  row-gap: 1.3888888vw;
  text-align: center;
  margin: 5em 0 2em; }
  @media screen and (max-width: 767px) {
    .school-grid {
      grid-template-columns: 1fr;
      -webkit-column-gap: 3.472222vw;
         -moz-column-gap: 3.472222vw;
              column-gap: 3.472222vw;
      row-gap: 3.472222vw; } }
  .school-grid .pin {
    display: inline-block;
    width: 1.31944436vw; }
    @media screen and (max-width: 767px) {
      .school-grid .pin {
        width: 3.472222vw; } }
  .school-grid__col {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column; }

.gridbox {
  border-radius: 1.736111vw;
  background: #FCF6F0;
  color: #9C99A2;
  width: 100%;
  font-size: 1.3888888vw; }
  @media screen and (max-width: 767px) {
    .gridbox {
      border-radius: 4.3402775vw;
      font-size: 3.472222vw; } }
  .gridbox__header {
    padding: 2em 4em  0; }
  .gridbox--when {
    padding: 2em 3em; }
    @media screen and (max-width: 767px) {
      .gridbox--when {
        padding: 2em 2em; } }
  .gridbox--how {
    padding: 2em 1em;
    margin-bottom: 1em; }
  .gridbox__title {
    font-weight: 500;
    margin-bottom: 0; }
  .gridbox__footer {
    font-size: 0.76388884vw; }
    @media screen and (max-width: 767px) {
      .gridbox__footer {
        font-size: 2.4305554vw; } }
  .gridbox__date {
    font-weight: 500;
    font-size: 5.5555552vw;
    color: #DD9A24;
    line-height: 1.25;
    margin: 0; }
    .gridbox__date span {
      font-weight: 300; }
    @media screen and (max-width: 767px) {
      .gridbox__date {
        font-size: 12.4999992vw; } }
  .gridbox__info {
    margin: 0;
    text-align: right;
    font-size: 0.83333328vw;
    padding-right: 3em;
    margin-bottom: 1em; }
    @media screen and (max-width: 767px) {
      .gridbox__info {
        font-size: 1.9097221vw;
        padding-right: 0em; } }
  .gridbox__location {
    font-weight: 700;
    font-size: 2.49999984vw;
    color: #DD9A24;
    margin: .5em 0; }
    .gridbox__location span {
      font-weight: 400; }
    @media screen and (max-width: 767px) {
      .gridbox__location {
        font-size: 6.944444vw; } }
  .gridbox__map {
    padding: 0 6em 1em; }
    @media screen and (max-width: 767px) {
      .gridbox__map {
        padding: 0 2em 1em; } }
  .gridbox__month {
    font-family: "SF Compact", serif;
    font-weight: 700;
    font-size: 1.45833324vw;
    text-transform: uppercase;
    color: #DD9A24;
    margin-top: 0; }
    @media screen and (max-width: 767px) {
      .gridbox__month {
        font-size: 3.8194442vw; } }
  .gridbox .table {
    margin: 1em auto 2em;
    text-align: left;
    color: #DD9A24; }
    .gridbox .table th {
      color: #DD9A24; }
      .gridbox .table th span {
        color: #000000; }
      .gridbox .table th:nth-child(2) {
        padding-left: 3.472222vw; }
        @media screen and (max-width: 767px) {
          .gridbox .table th:nth-child(2) {
            padding-left: 0; } }
    .gridbox .table td:nth-child(2) {
      padding-left: 3.472222vw; }
      @media screen and (max-width: 767px) {
        .gridbox .table td:nth-child(2) {
          padding-left: 0; } }

.campus-cover {
  position: relative;
  background: #AECBD9;
  color: #2E5C73;
  text-align: center;
  padding: 9.0277772vw 0 0; }
  .campus-cover p {
    max-width: 60%;
    margin: 0 auto; }
  .campus-cover img {
    margin-top: 3em; }
  @media screen and (max-width: 767px) {
    .campus-cover {
      padding: 16.4930545vw 0 0; } }
  .campus-cover .campus-subtitle {
    font-size: 2.0833332vw;
    font-weight: 500;
    max-width: 55%;
    margin: 1em auto 1em; }
    @media screen and (max-width: 767px) {
      .campus-cover .campus-subtitle {
        font-size: 4.1666664vw;
        max-width: 85%; } }
  .campus-cover .campus-title {
    color: #ffffff;
    font-size: 4.1666664vw;
    font-weight: 700;
    margin: 0; }
    @media screen and (max-width: 767px) {
      .campus-cover .campus-title {
        font-size: 8.3333328vw;
        text-align: center;
        top: 30%;
        line-height: 1; } }

@media screen and (max-width: 767px) {
  .campus {
    padding: 0 4.3402775vw 0; } }

.campus .section {
  margin: 0;
  padding: 0.3472222vw 0;
  position: relative; }
  @media screen and (max-width: 767px) {
    .campus .section {
      margin: 4.3402775vw 0;
      padding: 0; } }
  .campus .section--pad {
    padding: 2.0833332vw 4.1666664vw; }
    @media screen and (max-width: 767px) {
      .campus .section--pad {
        padding: 0; } }
  .campus .section--full {
    height: 65vw;
    overflow: hidden; }
    .campus .section--full img {
      width: 100%;
      height: 100%;
      -o-object-fit: cover;
         object-fit: cover; }
    @media screen and (max-width: 767px) {
      .campus .section--full {
        border-radius: 2.0833332vw;
        overflow: hidden; } }
  .campus .section--top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: -7.6388884vw;
    padding: 0 1.736111vw; }
    @media screen and (max-width: 767px) {
      .campus .section--top {
        margin-top: 0;
        display: block;
        padding: 0; } }
  .campus .section--reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-flow: row-reverse;
            flex-flow: row-reverse; }
  .campus .section--bottom {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-flow: row-reverse;
            flex-flow: row-reverse;
    margin-bottom: -7.6388884vw;
    z-index: 2;
    padding: 0 1.736111vw; }
    @media screen and (max-width: 767px) {
      .campus .section--bottom {
        display: block;
        margin-bottom: 0;
        padding: 0; } }
    .campus .section--bottom .section__col--text {
      padding: 0 6.944444vw 7.6388884vw; }
      @media screen and (max-width: 767px) {
        .campus .section--bottom .section__col--text {
          padding: 11.1111104vw 6.944444vw 11.1111104vw; } }
  .campus .section--text {
    text-align: center;
    padding: 6.944444vw 24%; }
    @media screen and (max-width: 767px) {
      .campus .section--text {
        padding: 11.1111104vw 6.944444vw 11.1111104vw; } }
  .campus .section__col {
    width: 50%; }
    @media screen and (max-width: 767px) {
      .campus .section__col {
        width: 100%; } }
    .campus .section__col--image {
      border-radius: 2.0833332vw;
      overflow: hidden; }
    .campus .section__col--text {
      padding: 7.6388884vw 6.944444vw 0;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-flow: column;
              flex-flow: column;
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: flex-start;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
      @media screen and (max-width: 767px) {
        .campus .section__col--text {
          padding: 11.1111104vw 6.944444vw 11.1111104vw; } }
  .campus .section p {
    color: #9C99A2;
    font-size: 1.80555544vw;
    margin: 0 0 1em; }
    @media screen and (max-width: 767px) {
      .campus .section p {
        font-size: 4.5138886vw; } }
  .campus .section h3 {
    font-size: 3.88888864vw;
    font-weight: 300;
    margin: 0 0 .3em;
    line-height: 1.1; }
    @media screen and (max-width: 767px) {
      .campus .section h3 {
        font-size: 9.7222216vw; } }

@media screen and (max-width: 767px) {
  .campus .card img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover; } }

.campus .card--a {
  grid-area: a; }

.campus .card--b {
  grid-area: b; }

.campus .card--c {
  grid-area: c; }

.campus__grid {
  display: grid;
  grid-template-columns: 50% 48%;
  grid-template-rows: 1fr 1fr;
  -webkit-column-gap: 1.3888888vw;
     -moz-column-gap: 1.3888888vw;
          column-gap: 1.3888888vw;
  row-gap: 1.3888888vw;
  grid-template-areas: "a c" "b c"; }
  @media screen and (max-width: 767px) {
    .campus__grid {
      grid-template-columns: 1fr;
      grid-template-rows: 1fr 1fr 1fr 1fr;
      row-gap: 4.3402775vw;
      grid-template-areas: "a" "b" "c" "c"; } }

.campus__flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .campus__flex .card {
    width: 49.2%; }

.cover-life {
  position: relative;
  padding: 9.0277772vw 0 0;
  background: #E2F4DE;
  color: #5F9F75; }
  @media screen and (max-width: 767px) {
    .cover-life {
      padding: 16.4930545vw 0 0; } }
  .cover-life__content {
    padding: 0 6.5972218vw;
    text-align: center; }
    .cover-life__content--bottom {
      padding-top: 9.0277772vw; }
    .cover-life__content p {
      font-size: 2.0833332vw;
      font-weight: 500;
      max-width: 74%;
      margin: 0 auto 6.80555512vw; }
      @media screen and (max-width: 767px) {
        .cover-life__content p {
          font-size: 4.1666664vw;
          max-width: 85%; } }
  .cover-life .page-title {
    margin-bottom: .5em; }

.life-box .button {
  margin-top: 2em; }

.life-box--blue {
  background: #AECBD9;
  color: #2E5C73; }
  .life-box--blue h3 {
    color: #2E5C73; }

.life-box--grey {
  background: #9C99A2; }
  .life-box--grey h3 {
    color: #000000; }

.life-box p {
  color: #ffffff;
  font-size: 1.66666656vw;
  font-weight: 400; }
  @media screen and (max-width: 767px) {
    .life-box p {
      font-size: 4.1666664vw; } }

.cover-olm {
  position: relative;
  padding: 4.1666664vw 6.5972218vw 0;
  text-align: left;
  background: #9C99A2;
  color: #ffffff;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap; }
  @media screen and (max-width: 767px) {
    .cover-olm {
      padding: 16.4930545vw 4vw 0;
      text-align: center; } }
  .cover-olm__space {
    position: relative;
    width: 50%; }
    @media screen and (max-width: 767px) {
      .cover-olm__space {
        width: 100%; } }
  .cover-olm__title {
    width: 120%;
    position: absolute;
    left: 6vw;
    top: 12vw;
    height: 100%; }
    @media screen and (max-width: 767px) {
      .cover-olm__title {
        width: 100%;
        position: relative;
        left: auto;
        top: auto;
        height: auto; } }
  .cover-olm__image {
    width: 30%;
    margin: 1em auto 0; }
    @media screen and (max-width: 767px) {
      .cover-olm__image {
        width: 100%; } }

.section {
  padding: 1.736111vw 2.6041665vw; }
  @media screen and (max-width: 767px) {
    .section {
      padding: 4.3402775vw; } }
  .section--ptop {
    padding-top: 4.1666664vw; }
    @media screen and (max-width: 767px) {
      .section--ptop {
        padding-top: 10.416666vw; } }
  .section--notop {
    padding-top: 0; }
  .section--job {
    text-align: center;
    padding-top: 2em; }
  .section--buttons {
    text-align: center;
    padding: 6.5972218vw 1.736111vw; }
    @media screen and (max-width: 767px) {
      .section--buttons {
        max-width: 80%;
        margin: 0 auto; } }
  .section--title {
    text-align: center;
    padding: 6.5972218vw 16.4930545vw 11.1111104vw; }
    @media screen and (max-width: 767px) {
      .section--title {
        padding: 16.4930545vw 6.5972218vw 6.5972218vw; } }
    @media screen and (max-width: 767px) {
      .section--title--special {
        padding: 16.4930545vw 10.416666vw 6.5972218vw; } }
  .section--flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap; }
  .section--grey {
    background: #9C99A2;
    color: #ffffff; }
  .section--lightgrey1 {
    background: #F2F2F2;
    color: #9C99A2; }
    .section--lightgrey1 h2, .section--lightgrey1 h3 {
      color: #9C99A2; }
  .section--lightgrey {
    background: #F7F7F7;
    color: #9C99A2; }
    .section--lightgrey h2, .section--lightgrey h3 {
      color: #9C99A2; }
  .section--blackgrey {
    background: #F7F7F7;
    color: #000000; }
  .section--lightgrey2 {
    background: #F7F7F7;
    color: #9C99A2; }
  .section--pink {
    background: #FF9F9D;
    color: #DA473C; }
  .section--blue {
    background: #AECBD9;
    color: #ffffff; }
    .section--blue h2, .section--blue h3 {
      color: #2E5C73; }
  .section--green {
    background: #E2F4DE;
    color: #5F9F75; }
  .section--nobottom {
    padding-bottom: 0; }
  @media screen and (max-width: 767px) {
    .section--faq {
      padding-bottom: 50vw; } }

.curr {
  padding: 0 0 4.1666664vw; }
  .curr__header {
    padding: 0 1.736111vw;
    background: #F7F7F7;
    color: #000000; }
    @media screen and (max-width: 767px) {
      .curr__header {
        padding: 0 3.472222vw; } }
  .curr .curr-title p {
    color: #000000; }
  .curr__title {
    color: #9C99A2; }
  .curr__formula {
    color: #ffffff; }
  .curr__formulas {
    padding: 0 1.736111vw; }
  .curr__action {
    text-align: center;
    margin-bottom: 6.5972218vw;
    margin-top: 4.1666664vw; }
    @media screen and (max-width: 767px) {
      .curr__action {
        margin-bottom: 10.416666vw;
        margin-top: 10.416666vw; } }
  .curr__info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    max-width: 55%;
    width: 100%;
    margin: 0 auto;
    font-size: 1.66666656vw;
    font-weight: 500;
    color: #ffffff;
    margin-bottom: 6.5972218vw;
    padding-top: 4.1666664vw; }
    @media screen and (max-width: 767px) {
      .curr__info {
        font-size: 4.1666664vw;
        margin-bottom: 10.416666vw;
        padding-top: 10.416666vw; } }
    .curr__info p {
      width: 46%;
      color: #ffffff; }
      @media screen and (max-width: 767px) {
        .curr__info p {
          width: 100%; } }
  .curr p {
    color: #ffffff; }
  .curr .curr-header {
    position: relative;
    height: 90vw; }
    @media screen and (max-width: 767px) {
      .curr .curr-header {
        height: 250vw; } }
    .curr .curr-header:before {
      content: "";
      position: absolute;
      display: block;
      width: 100%;
      left: 0;
      bottom: 0;
      font-size: 9.99999936vw;
      height: 25vw;
      background: #9C99A2;
      z-index: 0; }
      @media screen and (max-width: 767px) {
        .curr .curr-header:before {
          height: 45vw; } }
    .curr .curr-header__content {
      width: 55%;
      padding-left: 4.1666664vw;
      height: 100%;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-flow: column;
              flex-flow: column;
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: flex-start;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      position: relative;
      z-index: 1; }
      @media screen and (max-width: 767px) {
        .curr .curr-header__content {
          width: 100%;
          height: 250vw; } }
      .curr .curr-header__content .curr-title {
        height: 65vw;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: start;
            -ms-flex-align: start;
                align-items: flex-start;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-flow: column;
                flex-flow: column; }
        @media screen and (max-width: 767px) {
          .curr .curr-header__content .curr-title {
            padding-top: 10.416666vw;
            height: 150vw;
            -webkit-box-pack: start;
                -ms-flex-pack: start;
                    justify-content: flex-start; } }
        .curr .curr-header__content .curr-title p {
          max-width: 65%;
          font-size: 2.0833332vw;
          font-weight: 500;
          margin-top: 1em; }
          @media screen and (max-width: 767px) {
            .curr .curr-header__content .curr-title p {
              font-size: 5.208333vw;
              max-width: 90%; } }
      .curr .curr-header__content .formula-title {
        position: relative;
        margin-bottom: -0.6944444vw; }
        @media screen and (max-width: 767px) {
          .curr .curr-header__content .formula-title {
            text-align: center;
            margin-bottom: 0; } }
        .curr .curr-header__content .formula-title:after {
          content: "";
          display: block;
          height: 1.3888888vw;
          width: 80%;
          position: absolute;
          bottom: 0.6944444vw;
          left: 111.5%;
          background: #ffffff; }
          @media screen and (max-width: 767px) {
            .curr .curr-header__content .formula-title:after {
              display: none; } }
    .curr .curr-header__image {
      width: 44.8%;
      position: absolute;
      right: 0;
      bottom: 0;
      mix-blend-mode: multiply;
      height: 77.3vw; }
      @media screen and (max-width: 767px) {
        .curr .curr-header__image {
          width: 90%;
          bottom: 80vw; } }
  .curr .formulas {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 0 4.1666664vw;
    margin: 6.80555512vw 0 2.7777776vw; }
    @media screen and (max-width: 767px) {
      .curr .formulas {
        padding: 0 2.0833332vw 0 4.1666664vw;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-flow: row wrap;
                flex-flow: row wrap; } }
    .curr .formulas__item {
      width: 13%;
      margin: 0 3.5%;
      text-align: center;
      font-size: 1.24999992vw;
      position: relative; }
      @media screen and (max-width: 767px) {
        .curr .formulas__item {
          width: 50%;
          font-size: 3.999999744vw; } }
      .curr .formulas__item:after {
        content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' version='1.1' x='0px' y='0px' width='100%25' height='100%25' viewBox='-85 156.5 28 28' enable-background='new -85 156.5 28 28'%3E %3Cpath d='M-70,184.5h-2v-11h2V184.5z M-72,156.5v13h-13v2h13h2v-2v-13H-72z M-68,169.5v2h11v-2H-68z'/%3E %3C/svg%3E");
        display: block;
        width: 1.94444432vw;
        height: 1.94444432vw;
        position: absolute;
        top: 0.97222216vw;
        left: -4.47222216vw; }
        @media screen and (max-width: 767px) {
          .curr .formulas__item:after {
            width: 4.8611108vw;
            height: 4.8611108vw;
            position: relative;
            left: auto;
            top: auto;
            bottom: auto;
            right: auto;
            margin: 0 auto 1em; } }
      .curr .formulas__item:first-child:after {
        display: none; }
        @media screen and (max-width: 767px) {
          .curr .formulas__item:first-child:after {
            display: block; } }
      @media screen and (max-width: 767px) {
        .curr .formulas__item:last-child:after {
          display: none; } }
      .curr .formulas__item h4 {
        font-size: 1.66666656vw;
        color: #ffffff;
        margin: 0 auto;
        width: 95%; }
        @media screen and (max-width: 767px) {
          .curr .formulas__item h4 {
            font-size: 5.333332992vw; } }
      .curr .formulas__item p {
        color: #000000; }

.standards {
  padding: 13.888888vw 2.6041665vw; }
  @media screen and (max-width: 767px) {
    .standards {
      padding: 13.888888vw 4.3402775vw 0; } }
  .standards__header {
    text-align: center; }
    .standards__header p {
      font-size: 2.0833332vw;
      font-weight: 500;
      margin-top: 1em; }
      @media screen and (max-width: 767px) {
        .standards__header p {
          font-size: 5.208333vw;
          max-width: 70%;
          margin-left: auto;
          margin-right: auto; } }
  .standards__content {
    position: relative; }
    @media screen and (max-width: 767px) {
      .standards__content {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
            -ms-flex-flow: column-reverse;
                flex-flow: column-reverse; } }
    .standards__content .standard {
      position: absolute;
      color: #ffffff;
      text-align: center;
      font-size: 2.0833332vw;
      font-weight: 500;
      padding: 4.1666664vw 4.1666664vw 6.944444vw; }
      @media screen and (max-width: 767px) {
        .standards__content .standard {
          position: relative;
          font-size: 5.208333vw; } }
      .standards__content .standard .button {
        margin-top: 4.1666664vw; }
      .standards__content .standard h3 {
        max-width: 100%; }
      .standards__content .standard p {
        margin: 0 auto; }
      .standards__content .standard--1 {
        left: 0;
        top: 23%;
        z-index: 0;
        background: rgba(156, 153, 162, 0.8); }
        .standards__content .standard--1 h3 {
          color: #000000; }
        .standards__content .standard--1 p {
          max-width: 74%; }
          @media screen and (max-width: 767px) {
            .standards__content .standard--1 p {
              max-width: 80%; } }
      .standards__content .standard--2 {
        right: 0%;
        top: 42%;
        background: rgba(255, 159, 157, 0.8);
        z-index: 2; }
        .standards__content .standard--2 h3 {
          color: #DA473C; }
        .standards__content .standard--2 p {
          max-width: 100%; }
          @media screen and (max-width: 767px) {
            .standards__content .standard--2 p {
              max-width: 86%; } }
      .standards__content .standard__num {
        font-weight: 300;
        font-size: 16.52777672vw;
        margin: 0; }
  .standards__image {
    width: 65%;
    z-index: 0;
    margin-left: 31%;
    position: relative;
    pointer-events: none; }

.journey-more {
  text-align: center;
  padding: 1.736111vw 0 6.5972218vw; }
  @media screen and (max-width: 767px) {
    .journey-more {
      padding: 4.3402775vw 0 16.4930545vw; } }
  .journey-more__extra {
    width: 61%;
    margin: 0 auto;
    font-size: 2.0833332vw;
    color: #9C99A2;
    font-weight: 500;
    position: relative;
    z-index: 10; }
    @media screen and (max-width: 767px) {
      .journey-more__extra {
        width: 70%;
        font-size: 4.1666664vw; }
        .journey-more__extra br {
          display: none; } }

.method {
  text-align: center;
  position: relative;
  padding-top: 6.5972218vw; }
  @media screen and (max-width: 767px) {
    .method {
      padding: 0;
      padding-top: 16.4930545vw; } }
  .method .page-title {
    color: #ffffff;
    font-size: 9.99999936vw;
    font-weight: 700;
    font-weight: 900;
    letter-spacing: -0.02em; }
    @media screen and (max-width: 767px) {
      .method .page-title {
        font-size: 19.4444432vw;
        line-height: .85;
        margin-bottom: .2em; } }
  .method__subtitle {
    font-size: 3.33333312vw;
    font-weight: 700;
    margin-bottom: 1.5em; }
    @media screen and (max-width: 767px) {
      .method__subtitle {
        font-size: 5.208333vw;
        margin-bottom: .5em; } }
  .method__text {
    width: 61%;
    margin: 0 auto;
    font-size: 2.0833332vw;
    font-weight: 500;
    margin-top: 3em; }
    @media screen and (max-width: 767px) {
      .method__text {
        width: 70%;
        font-size: 4.1666664vw;
        margin-top: 1em; }
        .method__text br {
          display: none; } }
  .method__extra {
    width: 61%;
    margin: 0 auto;
    font-size: 2.0833332vw;
    color: #9C99A2;
    font-weight: 500;
    margin-top: 3em;
    position: relative;
    z-index: 10; }
    @media screen and (max-width: 767px) {
      .method__extra {
        width: 70%;
        font-size: 4.1666664vw;
        margin-top: 1em; }
        .method__extra br {
          display: none; } }
  .method__image {
    position: relative;
    z-index: 1;
    mix-blend-mode: multiply;
    width: 71.25%;
    margin: 0 auto; }
    @media screen and (max-width: 767px) {
      .method__image {
        width: 90%; } }
  .method:after {
    content: "";
    display: block;
    width: 100%;
    height: 44.5vw;
    background: #F7F7F7;
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: 0; }

.journey {
  padding: 1.736111vw 6.5972218vw 0; }
  @media screen and (max-width: 767px) {
    .journey {
      padding: 4.3402775vw 4.3402775vw 0; } }
  .journey .page-title {
    color: #AECBD9; }
  .journey__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin: 4.1666664vw 0 4.1666664vw; }
    @media screen and (max-width: 767px) {
      .journey__list {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-flow: row wrap;
                flex-flow: row wrap;
        -webkit-box-pack: start;
            -ms-flex-pack: start;
                justify-content: flex-start;
        margin: 4.1666664vw 0 1.736111vw; } }
  .journey__info {
    max-width: 70%;
    font-size: 2.0833332vw;
    font-weight: 500;
    margin: 10.416666vw auto 4.1666664vw; }
    @media screen and (max-width: 767px) {
      .journey__info {
        font-size: 4.1666664vw; } }
  .journey__content {
    width: 75%;
    margin: 0 auto; }
    @media screen and (max-width: 767px) {
      .journey__content {
        width: 90%; } }
  .journey__item {
    width: 15.2777768vw; }
    @media screen and (max-width: 767px) {
      .journey__item {
        width: 50%;
        margin-bottom: 2em; } }
    .journey__item:nth-child(1) svg {
      -webkit-transition-delay: 0;
              transition-delay: 0; }
    .journey__item:nth-child(2) svg {
      -webkit-transition-delay: .2s;
              transition-delay: .2s; }
    .journey__item:nth-child(3) svg {
      -webkit-transition-delay: .4s;
              transition-delay: .4s; }
      @media screen and (max-width: 767px) {
        .journey__item:nth-child(3) svg {
          -webkit-transition-delay: 0s;
                  transition-delay: 0s; } }
    .journey__item:nth-child(4) svg {
      -webkit-transition-delay: .6s;
              transition-delay: .6s; }
      @media screen and (max-width: 767px) {
        .journey__item:nth-child(4) svg {
          -webkit-transition-delay: .2s;
                  transition-delay: .2s; } }
    .journey__item:nth-child(5) svg {
      -webkit-transition-delay: .8s;
              transition-delay: .8s; }
      @media screen and (max-width: 767px) {
        .journey__item:nth-child(5) svg {
          -webkit-transition-delay: 0s;
                  transition-delay: 0s; } }
    .journey__item svg {
      opacity: 0;
      -webkit-transition: opacity .5s ease;
      transition: opacity .5s ease; }
    .journey__item .journey__icon {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      width: 12.70833252vw;
      height: 10.416666vw;
      position: relative; }
      @media screen and (max-width: 767px) {
        .journey__item .journey__icon {
          width: 25.41666504vw;
          height: 20.833332vw; } }
      .journey__item .journey__icon .num {
        position: absolute;
        display: block;
        padding: 0;
        color: #FF9F9D;
        font-size: 7.22222176vw;
        font-weight: 300;
        -webkit-transform: translate3d(0, 100%, 0);
                transform: translate3d(0, 100%, 0);
        opacity: 0;
        -webkit-transition: opacity .5s ease, -webkit-transform .5s ease;
        transition: opacity .5s ease, -webkit-transform .5s ease;
        transition: opacity .5s ease, transform .5s ease;
        transition: opacity .5s ease, transform .5s ease, -webkit-transform .5s ease; }
        @media screen and (max-width: 767px) {
          .journey__item .journey__icon .num {
            font-size: 17.63888776vw; } }
        .journey__item .journey__icon .num--1 {
          left: 0;
          top: -1.3888888vw;
          -webkit-transition-delay: 0;
                  transition-delay: 0; }
        .journey__item .journey__icon .num--2 {
          right: 0.6944444vw;
          -webkit-transition-delay: .2s;
                  transition-delay: .2s; }
        .journey__item .journey__icon .num--3 {
          left: 0;
          top: -0.6944444vw;
          -webkit-transition-delay: .4s;
                  transition-delay: .4s; }
          @media screen and (max-width: 767px) {
            .journey__item .journey__icon .num--3 {
              -webkit-transition-delay: 0s;
                      transition-delay: 0s; } }
        .journey__item .journey__icon .num--4 {
          -webkit-transition-delay: .6s;
                  transition-delay: .6s; }
          @media screen and (max-width: 767px) {
            .journey__item .journey__icon .num--4 {
              -webkit-transition-delay: .2s;
                      transition-delay: .2s; } }
        .journey__item .journey__icon .num--5 {
          -webkit-transition-delay: .8s;
                  transition-delay: .8s; }
          @media screen and (max-width: 767px) {
            .journey__item .journey__icon .num--5 {
              -webkit-transition-delay: 0s;
                      transition-delay: 0s; } }
    .journey__item.in-view .num {
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
      opacity: 1; }
    .journey__item.in-view svg {
      opacity: 1; }
    .journey__item h4 {
      font-weight: 700;
      color: #FF9F9D;
      text-transform: uppercase;
      margin: 2em 0 1.5em; }
      @media screen and (max-width: 767px) {
        .journey__item h4 {
          margin: 1em 0 .75em; } }
    .journey__item p {
      font-size: 1.11111104vw;
      margin: 1em 0;
      width: 100%; }
      @media screen and (max-width: 767px) {
        .journey__item p {
          font-size: 4.1666664vw; } }

.facts {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  color: #2E5C73;
  padding: 13.888888vw 6.5972218vw; }
  @media screen and (max-width: 767px) {
    .facts {
      padding: 13.888888vw 6.5972218vw;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-flow: row wrap;
              flex-flow: row wrap;
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: flex-start;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; } }
  .facts__header {
    width: 48%;
    text-align: center; }
    @media screen and (max-width: 767px) {
      .facts__header {
        width: 100%; } }
    .facts__header h2 {
      color: #ffffff; }
    .facts__header p {
      font-size: 3.33333312vw;
      font-weight: 700;
      margin-top: .75em; }
      .facts__header p.small {
        font-weight: 400;
        font-size: 1.66666656vw;
        max-width: 80%;
        margin: 0 auto; }
        @media screen and (max-width: 767px) {
          .facts__header p.small {
            font-size: 4.1666664vw;
            margin-bottom: 3em; } }
      @media screen and (max-width: 767px) {
        .facts__header p {
          font-size: 5.208333vw; } }
  .facts__list {
    width: 44%; }
    @media screen and (max-width: 767px) {
      .facts__list {
        width: 100%; } }
    .facts__list .button {
      margin-top: 1em; }
    .facts__list ul {
      margin: 0;
      padding: 0;
      list-style: none; }
      .facts__list ul li {
        margin: 0;
        padding: .6em 0;
        border-top: 2px solid #ffffff;
        font-size: 1.66666656vw; }
        @media screen and (max-width: 767px) {
          .facts__list ul li {
            font-size: 4.1666664vw;
            padding: 1em 0; } }
        .facts__list ul li:first-child {
          border: none; }

.asses {
  padding: 0 0 6.5972218vw; }
  .asses__icon {
    display: block;
    width: 13.1944436vw;
    height: 13.1944436vw; }
    @media screen and (max-width: 767px) {
      .asses__icon {
        width: 39.5833308vw;
        height: 39.5833308vw; } }
  .asses__text {
    width: 60%;
    margin: 6.2499996vw auto 0;
    font-size: 2.0833332vw;
    font-weight: 500; }
    @media screen and (max-width: 767px) {
      .asses__text {
        width: 90%;
        margin: 6.2499996vw auto 0;
        font-size: 4.1666664vw; }
        .asses__text br {
          display: none; } }
  .asses__header {
    padding: 9.0277772vw 1.736111vw;
    color: #000000;
    background: #F3EC8C;
    text-align: center;
    padding-bottom: 26vw; }
    @media screen and (max-width: 767px) {
      .asses__header {
        padding: 16.4930545vw 4.3402775vw 36.1111088vw; } }
  .asses__image {
    width: 63.2%;
    margin: -27.2vw auto 0; }
    @media screen and (max-width: 767px) {
      .asses__image {
        margin: -34vw auto 0;
        width: 80%; } }
  .asses__content {
    text-align: center;
    padding: 0 5.5555552vw; }
    @media screen and (max-width: 767px) {
      .asses__content {
        padding: 0 10.416666vw; } }
  .asses__title {
    color: #DE9B00;
    font-size: 3.33333312vw;
    font-weight: 700;
    margin: 0; }
    @media screen and (max-width: 767px) {
      .asses__title {
        font-size: 5.208333vw; } }
  .asses__tagline {
    font-size: 2.0833332vw;
    font-weight: 500;
    color: #000000;
    width: 67%;
    margin: 0 auto; }
    @media screen and (max-width: 767px) {
      .asses__tagline {
        font-size: 4.1666664vw;
        width: 80%;
        margin: .5em auto 0; } }
  .asses__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: 9.0277772vw; }
  .asses__item {
    width: 28%;
    text-align: left; }
    @media screen and (max-width: 767px) {
      .asses__item {
        width: 90%;
        margin-bottom: 2em; } }
    .asses__item h4 {
      font-size: 3.33333312vw;
      font-weight: 700;
      color: #DE9B00;
      margin: .4em 0 0;
      line-height: 1; }
      @media screen and (max-width: 767px) {
        .asses__item h4 {
          font-size: 8.3333328vw; } }
    .asses__item p {
      font-size: 1.66666656vw;
      color: #000000; }
      @media screen and (max-width: 767px) {
        .asses__item p {
          font-size: 4.1666664vw; } }
  .asses__subtitle {
    display: block;
    font-size: 0.97222216vw;
    text-transform: uppercase;
    letter-spacing: .05em;
    margin-top: .3em;
    font-weight: 500;
    color: #000000;
    line-height: 1.2;
    margin-bottom: 3em;
    max-width: 80%; }
    @media screen and (max-width: 767px) {
      .asses__subtitle {
        font-size: 3.1249998vw; } }

.structure {
  padding-top: 6.5972218vw; }
  @media screen and (max-width: 767px) {
    .structure {
      padding-top: 16.4930545vw; } }
  .structure .page-title {
    color: #FF9F9D; }
  .structure__header {
    max-width: 70%;
    margin: 0 auto;
    text-align: center; }
    @media screen and (max-width: 767px) {
      .structure__header {
        max-width: 80%; }
        .structure__header br {
          display: none; } }
    .structure__header p {
      margin: 1em auto;
      font-size: 2.0833332vw;
      font-weight: 500; }
      @media screen and (max-width: 767px) {
        .structure__header p {
          font-size: 4.1666664vw; } }

.organize {
  text-align: center;
  padding: 6.5972218vw 0; }
  @media screen and (max-width: 767px) {
    .organize {
      padding: 16.4930545vw 4.3402775vw; } }
  .organize__title {
    font-weight: 700;
    margin: 0 auto 1em;
    width: 30%; }
    @media screen and (max-width: 767px) {
      .organize__title {
        width: 80%; } }
  .organize__table {
    margin-top: 6.5972218vw; }
    @media screen and (max-width: 767px) {
      .organize__table {
        font-size: 3.111110912vw; } }
  .organize h4 {
    font-weight: 700;
    margin-top: 0; }
  .organize p {
    color: #ffffff;
    margin-bottom: .4em; }

.days {
  text-align: center;
  position: relative;
  padding-top: 6.5972218vw; }
  @media screen and (max-width: 767px) {
    .days {
      padding-top: 16.4930545vw; } }
  .days:after {
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    height: 16.5vw;
    background: #F7F7F7;
    left: 0;
    bottom: 0;
    z-index: 0; }
    @media screen and (max-width: 767px) {
      .days:after {
        height: 24.75vw; } }
  .days .page-title {
    color: #ffffff;
    margin-bottom: .75em; }
  .days .page-subtitle {
    color: #ffffff;
    margin-bottom: .75em;
    font-weight: 700;
    font-size: 2.7777776vw;
    line-height: .95;
    margin: 0;
    letter-spacing: -0.02em; }
    @media screen and (max-width: 767px) {
      .days .page-subtitle {
        font-size: 5.5555552vw; } }
  .days__subtitle {
    font-size: 3.33333312vw;
    font-weight: 700;
    margin-bottom: .5em; }
    @media screen and (max-width: 767px) {
      .days__subtitle {
        font-size: 5.208333vw;
        max-width: 70%;
        margin-left: auto;
        margin-right: auto; } }
  .days__text {
    max-width: 63%;
    margin: 0 auto; }
    @media screen and (max-width: 767px) {
      .days__text {
        max-width: 90%; } }
  .days__image {
    width: 49%;
    margin: 0 auto;
    mix-blend-mode: multiply;
    position: relative;
    z-index: 1; }
    @media screen and (max-width: 767px) {
      .days__image {
        width: 70%; } }
  .days p {
    font-size: 2.0833332vw; }
    @media screen and (max-width: 767px) {
      .days p {
        font-size: 4.1666664vw; } }

.mastery {
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap; }
  .mastery__container {
    position: relative; }
  .mastery__image {
    margin-top: 20px;
    width: 100%;
    padding-left: 0 !important;
    padding-right: 15px !important; }
    @media screen and (max-width: 767px) {
      .mastery__image {
        width: 100%;
        position: relative;
        bottom: auto;
        left: auto; } }
    .mastery__image img {
      border-radius: 20px; }
  .mastery__text {
    padding-bottom: 6.5972218vw; }
  .mastery .box {
    padding-bottom: 0; }

.wholelife .quote {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  width: 70%;
  margin: 0 auto;
  position: relative; }
  @media screen and (max-width: 767px) {
    .wholelife .quote {
      width: 100%; } }
  .wholelife .quote .eighty {
    width: 31.9444424vw;
    height: 31.9444424vw;
    border-radius: 2.0833332vw;
    border: 2px solid #AECBD9;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    @media screen and (max-width: 767px) {
      .wholelife .quote .eighty {
        width: 45.8333304vw;
        height: 45.8333304vw;
        border-radius: 5.208333vw; } }
    .wholelife .quote .eighty img {
      width: 43.5%; }
  .wholelife .quote blockquote {
    margin: 0;
    padding: 0;
    width: 60%;
    background: #F7F7F7;
    font-size: 3.33333312vw;
    font-weight: 700;
    padding: .5em 0;
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%); }
    @media screen and (max-width: 767px) {
      .wholelife .quote blockquote {
        font-size: 4.3402775vw; } }

.creation {
  padding: 6.5972218vw 1.736111vw; }
  .creation .dteam {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row;
            flex-flow: row; }
    .creation .dteam__m {
      width: 23%;
      border-radius: 2.0833332vw;
      overflow: hidden; }

.span-blue {
  color: #AECBD9; }

.story {
  padding: 6.5972218vw 13.5416658vw 0; }
  @media screen and (max-width: 767px) {
    .story {
      padding: 16.4930545vw 10.416666vw 0; } }
  .story--join {
    padding: 0 15.2777768vw 0;
    color: #000000; }
    @media screen and (max-width: 767px) {
      .story--join {
        padding: 0 7.6388884vw 0; } }
    .story--join h3 {
      color: #000000; }
    .story--join .story__row {
      border: none;
      padding: 2.7777776vw 0 0; }
  .story--pad {
    padding-top: 5.5555552vw; }
  .story--small {
    padding: 0 19.7916654vw 0; }
    @media screen and (max-width: 767px) {
      .story--small {
        padding: 0 10.416666vw 0; } }
    .story--small .story__row {
      margin-bottom: 0; }
  .story .row-image {
    position: absolute;
    width: 48vw;
    bottom: -2px;
    left: -10.416666vw;
    mix-blend-mode: multiply;
    z-index: 1; }
    @media screen and (max-width: 767px) {
      .story .row-image {
        position: relative;
        width: 100%;
        bottom: auto;
        left: auto; } }
    .story .row-image--adm1 {
      width: 40vw;
      bottom: 0px;
      left: -9.7222216vw;
      mix-blend-mode: normal; }
      @media screen and (max-width: 767px) {
        .story .row-image--adm1 {
          left: 0;
          width: 100%; } }
    .story .row-image--adm {
      left: -16.18055452vw;
      width: 44vw;
      bottom: 0px;
      mix-blend-mode: normal;
      border-bottom: 2px solid #9C99A2; }
      @media screen and (max-width: 767px) {
        .story .row-image--adm {
          left: -14.7569435vw;
          width: 100%;
          width: 100%; } }
    .story .row-image--life {
      width: 40vw;
      margin: 1em 0 0 -5vw;
      bottom: -1.736111vw;
      mix-blend-mode: normal; }
      @media screen and (max-width: 767px) {
        .story .row-image--life {
          width: 100%;
          margin: 0 auto 1em;
          bottom: 0;
          border-bottom: 2px solid #9C99A2; } }
  .story .span-image {
    width: 70vw;
    margin: 2em 0 2em -34vw; }
    @media screen and (max-width: 767px) {
      .story .span-image {
        width: 95vw;
        margin: 2em 0 2em -12vw; } }
  @media screen and (max-width: 767px) {
    .story .acc-header {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: flex-start;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between; }
      .story .acc-header h3 {
        width: 50%; } }
  .story__image {
    width: 6.944444vw;
    padding-top: 0.6944444vw; }
    @media screen and (max-width: 767px) {
      .story__image {
        width: 20.833332vw;
        padding-top: 0; } }
    .story__image.erasmus {
      width: 17.36111vw; }
      @media screen and (max-width: 767px) {
        .story__image.erasmus {
          width: 41.666664vw; } }
  .story__row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 5.5555552vw 0 0;
    margin-bottom: 5.5555552vw;
    position: relative;
    border-top: 2px solid #9C99A2; }
    @media screen and (max-width: 767px) {
      .story__row {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-flow: row wrap;
                flex-flow: row wrap;
        padding: 11.1111104vw 0 0;
        margin-bottom: 11.1111104vw; } }
    .story__row--blue {
      border-top: none; }
    .story__row--image {
      margin-bottom: 0; }
      .story__row--image .story__content {
        margin-bottom: 5.5555552vw; }
    .story__row--last {
      margin-bottom: 3.472222vw; }
      .story__row--last:after {
        content: '';
        display: block;
        position: absolute;
        bottom: 0;
        height: 2px;
        background: #9C99A2;
        right: 0;
        width: 68%;
        z-index: 0; }
      @media screen and (max-width: 767px) {
        .story__row--last:after {
          display: none; } }
  .story--campus {
    padding: 4.8611108vw 20.833332vw 0; }
    @media screen and (max-width: 767px) {
      .story--campus {
        padding: 4.1666664vw 10.416666vw 0; } }
    .story--campus .story__header {
      width: 46%;
      color: #5F9F75; }
      @media screen and (max-width: 767px) {
        .story--campus .story__header {
          width: 100%; } }
    .story--campus .story__content {
      width: 46%; }
      @media screen and (max-width: 767px) {
        .story--campus .story__content {
          width: 100%; } }
    .story--campus .story__row {
      border: none; }
  .story--admissions .story__header p {
    color: #5F9F75; }
  .story__header {
    width: 36%;
    position: relative; }
    @media screen and (max-width: 767px) {
      .story__header {
        width: 100%;
        margin-bottom: 5.5555552vw; } }
    .story__header h3 {
      margin: 0;
      font-weight: 700;
      font-size: 2.0833332vw;
      line-height: 1; }
      @media screen and (max-width: 767px) {
        .story__header h3 {
          font-size: 4.1666664vw; } }
    .story__header p {
      margin: 0;
      font-size: 2.0833332vw;
      font-weight: 700; }
      @media screen and (max-width: 767px) {
        .story__header p {
          font-size: 4.1666664vw; } }
  .story__content {
    width: 52%;
    font-size: 1.66666656vw;
    line-height: 1.4; }
    @media screen and (max-width: 767px) {
      .story__content {
        width: 100%;
        font-size: 4.1666664vw; } }
    .story__content a {
      text-decoration: underline; }
    .story__content ol {
      margin: 0 0 1em 0;
      list-style: none;
      padding: 0;
      display: inline-block;
      counter-reset: olcounter; }
      .story__content ol h4 {
        font-weight: 700;
        margin: 0; }
      .story__content ol p {
        margin: 0; }
      .story__content ol li {
        margin: 0 0 1em 0;
        padding: 1em 0 0;
        position: relative;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        counter-increment: olcounter; }
        .story__content ol li:before {
          content: counter(olcounter, upper-alpha) ". ";
          color: #5F9F75;
          display: block;
          position: absolute;
          top: .9em;
          left: -2.0833332vw; }
          @media screen and (max-width: 767px) {
            .story__content ol li:before {
              left: -5.208333vw; } }
    .story__content ul {
      margin: 0 0 1em 0;
      list-style: none;
      padding: 0;
      display: inline-block; }
      .story__content ul.joblist li {
        margin: 0;
        padding: .5em 0 0; }
        .story__content ul.joblist li:before {
          display: none; }
      .story__content ul li {
        margin: 0 0 1em 0;
        padding: 1em 0 0;
        position: relative;
        -webkit-box-sizing: border-box;
                box-sizing: border-box; }
        .story__content ul li p {
          margin: 0; }
        .story__content ul li:before {
          content: "";
          width: 20.833332vw;
          height: 1px;
          background: #9C99A2;
          position: absolute;
          top: 0;
          left: 0;
          max-width: 100%; }
      .story__content ul.green li:before {
        background: #5F9F75; }

.faq__header {
  text-align: center;
  color: #000000;
  position: relative;
  z-index: 1;
  padding-top: 4.1666664vw; }
  @media screen and (max-width: 767px) {
    .faq__header {
      padding: 6.5972218vw 8.680555vw 0; } }
  .faq__header h2 {
    color: #9C99A2;
    font-size: 3.33333312vw;
    font-weight: 600;
    margin: 0; }
    @media screen and (max-width: 767px) {
      .faq__header h2 {
        font-size: 7.333332864vw; } }

.boxli {
  margin: 0 0 1em 0;
  list-style: none;
  padding: 0;
  display: inline-block; }
  .boxli li {
    margin: 0 0 1em 0;
    padding: 1em 0 0;
    position: relative;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
    .boxli li p {
      margin: 0; }
    .boxli li:first-child:before {
      display: none; }
    .boxli li:before {
      content: "";
      width: 20.833332vw;
      height: 1px;
      background: #000000;
      position: absolute;
      top: 0;
      left: 0;
      max-width: 100%; }

.cover-faq {
  position: relative;
  padding: 9.0277772vw 13.888888vw 6.5972218vw;
  text-align: center; }
  @media screen and (max-width: 767px) {
    .cover-faq {
      padding: 16.4930545vw 16.4930545vw 4.3402775vw; } }
  .cover-faq .page-title {
    margin-bottom: .5em; }
  .cover-faq p {
    font-size: 2.0833332vw;
    font-weight: 500;
    margin-bottom: 0;
    color: #000000; }
    @media screen and (max-width: 767px) {
      .cover-faq p {
        font-size: 5.208333vw; }
        .cover-faq p br {
          display: none; } }

.faq-rows {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .faq-rows--1 {
    font-size: 1.94444432vw; }
    @media screen and (max-width: 767px) {
      .faq-rows--1 {
        font-size: 5.444444096vw; }
        .faq-rows--1 br {
          display: none; } }
  @media screen and (max-width: 767px) {
    .faq-rows {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-flow: row wrap;
              flex-flow: row wrap; } }
  .faq-rows .box {
    margin: 0;
    color: #ffffff; }

.faq-table {
  position: relative;
  color: #000000;
  text-align: center; }
  .faq-table .table {
    position: relative;
    z-index: 1;
    padding: 4.1666664vw;
    text-align: left; }
    @media screen and (max-width: 767px) {
      .faq-table .table {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: stretch;
            -ms-flex-align: stretch;
                align-items: stretch;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-flow: row wrap;
                flex-flow: row wrap;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
        height: 70vw; } }
    @media screen and (max-width: 767px) {
      .faq-table .table__header {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-flow: column;
                flex-flow: column;
        width: 40%; } }
    .faq-table .table__header .table__cell {
      font-weight: 700;
      font-size: 2.0833332vw;
      border: none;
      padding: 0; }
      @media screen and (max-width: 767px) {
        .faq-table .table__header .table__cell {
          -webkit-box-flex: 0;
              -ms-flex: 0 0 auto;
                  flex: 0 0 auto;
          padding: .75em 0 .25em;
          font-size: 3.1249998vw;
          height: 25%; }
          .faq-table .table__header .table__cell:first-child {
            width: auto;
            -webkit-box-flex: 0;
                -ms-flex: 0 0 auto;
                    flex: 0 0 auto;
            height: 20%; }
          .faq-table .table__header .table__cell:nth-child(2) {
            width: auto;
            -webkit-box-flex: 0;
                -ms-flex: 0 0 auto;
                    flex: 0 0 auto;
            height: 40%; }
          .faq-table .table__header .table__cell:last-child {
            width: auto;
            -webkit-box-flex: 0;
                -ms-flex: 0 0 auto;
                    flex: 0 0 auto;
            height: 20%; } }
    .faq-table .table__cell {
      border-bottom: 1px solid #000;
      padding: .75em 0 .25em;
      width: auto;
      -webkit-box-flex: 0;
          -ms-flex: 0 0 24%;
              flex: 0 0 24%; }
      .faq-table .table__cell br {
        display: none; }
        @media screen and (max-width: 767px) {
          .faq-table .table__cell br {
            display: block; } }
      .faq-table .table__cell:first-child {
        width: auto;
        -webkit-box-flex: 0;
            -ms-flex: 0 0 26%;
                flex: 0 0 26%; }
      .faq-table .table__cell:nth-child(2) {
        width: auto;
        -webkit-box-flex: 0;
            -ms-flex: 0 0 18%;
                flex: 0 0 18%; }
      .faq-table .table__cell:last-child {
        width: auto;
        -webkit-box-flex: 0;
            -ms-flex: 0 0 24%;
                flex: 0 0 24%; }
      @media screen and (max-width: 767px) {
        .faq-table .table__cell {
          -webkit-box-flex: 0;
              -ms-flex: 0 0 auto;
                  flex: 0 0 auto;
          height: 25%; }
          .faq-table .table__cell:first-child {
            width: auto;
            -webkit-box-flex: 0;
                -ms-flex: 0 0 auto;
                    flex: 0 0 auto;
            height: 25%; }
          .faq-table .table__cell:nth-child(2) {
            width: auto;
            -webkit-box-flex: 0;
                -ms-flex: 0 0 auto;
                    flex: 0 0 auto;
            height: 40%; }
          .faq-table .table__cell:last-child {
            width: auto;
            -webkit-box-flex: 0;
                -ms-flex: 0 0 auto;
                    flex: 0 0 auto;
            height: 20%;
            border: none; } }
      .faq-table .table__cell span {
        display: block;
        border-top: 1px solid #000000;
        max-width: 40%;
        padding: .5em 0; }
        @media screen and (max-width: 767px) {
          .faq-table .table__cell span {
            max-width: 80%; } }
        .faq-table .table__cell span:first-child {
          border: none;
          padding: .5em 0; }
    .faq-table .table__row:last-child .table__cell {
      border: none; }
      @media screen and (max-width: 767px) {
        .faq-table .table__row:last-child .table__cell {
          border-top: 1px solid #000000; }
          .faq-table .table__row:last-child .table__cell:first-child {
            border: none; } }
    @media screen and (max-width: 767px) {
      .faq-table .table__row {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-flow: column;
                flex-flow: column;
        width: 25%; } }
  .faq-table:before {
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    height: 85%;
    border-radius: 2.0833332vw;
    background: -webkit-gradient(linear, left bottom, left top, from(#9c99a2), to(#f2f2f2));
    background: linear-gradient(0deg, #9c99a2 0%, #f2f2f2 100%);
    z-index: 0; }

.section__col {
  width: 49%; }
  @media screen and (max-width: 767px) {
    .section__col {
      width: 100%; } }
  .section__col .box {
    width: 100%; }

.schedule {
  background: #F7F7F7;
  border-radius: 2.0833332vw;
  color: #000000;
  padding: 2.7777776vw;
  text-align: center; }
  @media screen and (max-width: 767px) {
    .schedule {
      padding: 6.944444vw 2.7777776vw;
      border-radius: 5.208333vw; } }
  .schedule h2 {
    font-size: 3.33333312vw;
    font-weight: 600; }
    @media screen and (max-width: 767px) {
      .schedule h2 {
        font-size: 7.333332864vw;
        margin: 0 auto;
        max-width: 80%; } }
  .schedule dl {
    max-width: 60%;
    margin: 0 auto;
    padding: 0; }
    @media screen and (max-width: 767px) {
      .schedule dl {
        max-width: 100%; } }
  .schedule dt {
    margin-top: 5.5555552vw;
    color: #9C99A2;
    text-transform: uppercase;
    letter-spacing: .1em; }
    @media screen and (max-width: 767px) {
      .schedule dt {
        margin-top: 11.1111104vw;
        font-size: 3.472222vw; } }
  .schedule dd {
    font-size: 3.33333312vw;
    font-weight: 400; }
    @media screen and (max-width: 767px) {
      .schedule dd {
        font-size: 7.333332864vw; } }
    .schedule dd.small {
      color: #000000;
      text-transform: uppercase;
      letter-spacing: .1em;
      font-size: 1.66666656vw;
      margin-top: 1em; }
      @media screen and (max-width: 767px) {
        .schedule dd.small {
          font-size: 4.666666368vw; } }
    .schedule dd span {
      font-size: 1.66666656vw;
      color: #9C99A2;
      text-transform: uppercase;
      letter-spacing: .2em; }
      @media screen and (max-width: 767px) {
        .schedule dd span {
          font-size: 3.666666432vw; } }
  .schedule p {
    max-width: 60%;
    margin: 5.5555552vw auto; }
    @media screen and (max-width: 767px) {
      .schedule p {
        max-width: 88%;
        margin: 11.1111104vw auto; } }

.education {
  padding-top: 4.1666664vw; }
  @media screen and (max-width: 767px) {
    .education {
      padding-top: 4.1666664vw; } }
  .education__def {
    text-align: center;
    color: #2E5C73;
    margin: 5.5555552vw 0; }
    @media screen and (max-width: 767px) {
      .education__def {
        margin: 10.416666vw 0; } }
    .education__def p {
      font-size: 2.0833332vw;
      font-weight: 500;
      max-width: 52%;
      margin: 0 auto; }
      @media screen and (max-width: 767px) {
        .education__def p {
          font-size: 5.208333vw;
          max-width: 87%; } }
  .education__header {
    text-align: center; }
    .education__header h2 {
      font-size: 3.33333312vw;
      font-weight: 600; }
      @media screen and (max-width: 767px) {
        .education__header h2 {
          font-size: 7.333332864vw; } }
    .education__header p {
      max-width: 53%;
      margin: 0 auto; }
      @media screen and (max-width: 767px) {
        .education__header p {
          max-width: 87%; } }
  .education__row {
    max-width: 60%;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    margin: 0 auto;
    padding: 0;
    list-style: none; }
    @media screen and (max-width: 767px) {
      .education__row {
        max-width: 100%; } }
    .education__row h3 {
      font-size: 2.0833332vw;
      font-weight: 700; }
      @media screen and (max-width: 767px) {
        .education__row h3 {
          font-size: 5.208333vw; } }
    .education__row li {
      width: 46.5%;
      color: #2E5C73;
      margin: 0;
      padding: 1em 0;
      border-top: 2px solid #ffffff;
      font-size: 1.66666656vw; }
      @media screen and (max-width: 767px) {
        .education__row li {
          font-size: 4.1666664vw; } }
      .education__row li.list-title {
        border: none; }
  .education__footer {
    text-align: center;
    background: #AECBD9;
    padding-top: 10.416666vw; }

.cover-education {
  text-align: center;
  padding: 9.0277772vw 1.736111vw 0; }
  @media screen and (max-width: 767px) {
    .cover-education {
      padding: 16.4930545vw 4.3402775vw 0; } }
  .cover-education .page-title span {
    font-size: 4.99999968vw;
    display: block;
    font-weight: 400; }

.section--faq {
  position: relative; }
  .section--faq .box {
    position: relative;
    z-index: 1; }

.faq-image {
  position: absolute;
  right: 6%;
  bottom: 0;
  width: 65%;
  mix-blend-mode: multiply;
  z-index: 0; }
  @media screen and (max-width: 767px) {
    .faq-image {
      width: 90%; } }

.faq-box {
  width: 48%;
  position: absolute;
  left: 1.3888888vw;
  bottom: 4.1666664vw;
  z-index: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }
  @media screen and (max-width: 767px) {
    .faq-box {
      width: 40%;
      left: 4.5vw;
      bottom: 10vw; } }
  .faq-box .faq-box-wrapper {
    border-radius: 2.0833332vw;
    width: 24.305554vw;
    height: 24.305554vw;
    background: #AECBD9; }
    @media screen and (max-width: 767px) {
      .faq-box .faq-box-wrapper {
        border-radius: 5.208333vw;
        width: 36.458331vw;
        height: 36.458331vw; } }

.footer {
  padding: 8.3333328vw 1.736111vw;
  font-size: 1.24999992vw; }
  @media screen and (max-width: 767px) {
    .footer {
      padding: 16.4930545vw 4.3402775vw;
      font-size: 4.1666664vw; } }
  .footer--blue {
    background: #AECBD9;
    color: #2E5C73; }
  .footer--lightgrey {
    background: #F7F7F7;
    color: #9C99A2; }
  .footer__row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row;
            flex-flow: row;
    width: 100%;
    margin: 0 auto; }
  .footer__col {
    width: 65%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap; }
    .footer__col .contact-form {
      width: 100%;
      max-width: 34.72222vw; }
      @media screen and (max-width: 767px) {
        .footer__col .contact-form {
          max-width: 100%; } }
    .footer__col:first-child {
      -webkit-box-pack: end;
          -ms-flex-pack: end;
              justify-content: flex-end;
      padding-right: 10%;
      width: 35%; }
      @media screen and (max-width: 767px) {
        .footer__col:first-child {
          width: 35%;
          padding-right: 0%; } }
    @media screen and (max-width: 767px) {
      .footer__col {
        width: 50%;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-flow: column;
                flex-flow: column;
        text-align: left; } }
    @media screen and (max-width: 767px) {
      .footer__col .desktop {
        display: none; } }
    .footer__col .main-logo {
      width: 17.29166556vw;
      height: 7.6388884vw; }
      @media screen and (max-width: 767px) {
        .footer__col .main-logo {
          width: 28.531248174vw;
          height: 12.60416586vw; } }
    .footer__col nav {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: flex-start;
      -webkit-box-pack: start;
          -ms-flex-pack: start;
              justify-content: flex-start;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-flow: column;
              flex-flow: column;
      margin-right: 15%; }
      @media screen and (max-width: 767px) {
        .footer__col nav {
          -webkit-box-align: start;
              -ms-flex-align: start;
                  align-items: flex-start;
          -webkit-box-pack: center;
              -ms-flex-pack: center;
                  justify-content: center;
          margin-right: 0;
          text-align: left;
          margin: 3% 10% 0 0;
          font-size: 3.1249998vw; } }
      .footer__col nav:last-child {
        margin-right: 0; }
      .footer__col nav a {
        margin-bottom: .75em; }

.contact-footer {
  margin-top: 2em; }
  .contact-footer a {
    text-decoration: underline; }
    .contact-footer a.tel {
      text-decoration: none; }
  .contact-footer p {
    margin-bottom: .5em; }

.abox {
  opacity: 0;
  -webkit-transform: translate3d(0, 10vw, 0) scaleY(1.2);
          transform: translate3d(0, 10vw, 0) scaleY(1.2);
  -webkit-transition: opacity .51s ease, background .5s ease, -webkit-transform .71s ease;
  transition: opacity .51s ease, background .5s ease, -webkit-transform .71s ease;
  transition: transform .71s ease, opacity .51s ease, background .5s ease;
  transition: transform .71s ease, opacity .51s ease, background .5s ease, -webkit-transform .71s ease; }
  .abox--2 {
    -webkit-transition-delay: .15s;
            transition-delay: .15s; }
    @media screen and (max-width: 767px) {
      .abox--2 {
        -webkit-transition-delay: 0s;
                transition-delay: 0s; } }
  @media screen and (max-width: 767px) {
    .abox.manifesto-line.abox--2 {
      -webkit-transition-delay: .15s;
              transition-delay: .15s; } }
  .abox--3 {
    -webkit-transition-delay: .3s;
            transition-delay: .3s; }
    @media screen and (max-width: 767px) {
      .abox--3 {
        -webkit-transition-delay: 0s;
                transition-delay: 0s; } }
  @media screen and (max-width: 767px) {
    .abox.manifesto-line.abox--3 {
      -webkit-transition-delay: .3s;
              transition-delay: .3s; } }
  .abox--4 {
    -webkit-transition-delay: .45s;
            transition-delay: .45s; }
    @media screen and (max-width: 767px) {
      .abox--4 {
        -webkit-transition-delay: 0s;
                transition-delay: 0s; } }
  .abox--5 {
    -webkit-transition-delay: .6s;
            transition-delay: .6s; }
    @media screen and (max-width: 767px) {
      .abox--5 {
        -webkit-transition-delay: 0s;
                transition-delay: 0s; } }
  .abox.in-view {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0) scaleY(1);
            transform: translate3d(0, 0, 0) scaleY(1); }

.fade {
  -webkit-transition: opacity .73s ease;
  transition: opacity .73s ease;
  opacity: 0; }
  .fade--15 {
    -webkit-transition-delay: .15s;
            transition-delay: .15s; }
  .fade--30 {
    -webkit-transition-delay: .30s;
            transition-delay: .30s; }
  .is-loaded .fade {
    opacity: 1; }

.cover-privacy {
  position: relative;
  padding: 9.0277772vw 13.888888vw 0;
  text-align: center; }
  .cover-privacy p {
    font-size: 1.24999992vw;
    color: #9C99A2;
    margin-top: 2em; }
    @media screen and (max-width: 767px) {
      .cover-privacy p {
        font-size: 3.1249998vw; } }
  @media screen and (max-width: 767px) {
    .cover-privacy {
      padding: 16.4930545vw 4.3402775vw 0; } }

.privacy {
  padding-top: 6.5972218vw;
  max-width: 65%;
  margin: 0 auto; }
  @media screen and (max-width: 767px) {
    .privacy {
      padding: 16.4930545vw 8.680555vw;
      max-width: 100%; } }
  .privacy a {
    color: #2E5C73; }
  .privacy h2 {
    font-size: 2.0833332vw;
    font-weight: 700;
    color: #000000; }
    @media screen and (max-width: 767px) {
      .privacy h2 {
        font-size: 6.0763885vw; } }
  .privacy__footer:before {
    content: "";
    display: block;
    width: 45%;
    height: 2px;
    background: #9C99A2;
    margin: 4.1666664vw 0 2.0833332vw; }

.anounce {
  position: fixed;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  z-index: 11000;
  padding: 10%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-transform: translate3d(0, 100%, 0);
          transform: translate3d(0, 100%, 0); }
  .has-anounce .anounce {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }
  @media screen and (max-width: 767px) {
    .anounce {
      padding: 5%; } }
  .anounce__content {
    position: relative;
    z-index: 1;
    text-align: center;
    background: #E2F4DE;
    padding-bottom: 2.7777776vw;
    opacity: 0;
    -webkit-transform: translate3d(0, 20%, 0);
            transform: translate3d(0, 20%, 0);
    -webkit-transition: opacity .3s ease, -webkit-transform .5s ease;
    transition: opacity .3s ease, -webkit-transform .5s ease;
    transition: transform .5s ease, opacity .3s ease;
    transition: transform .5s ease, opacity .3s ease, -webkit-transform .5s ease; }
    .has-anounce .anounce__content {
      opacity: 1;
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0); }
    @media screen and (max-width: 767px) {
      .anounce__content {
        padding-bottom: 6.944444vw; } }
  @media screen and (orientation: landscape) {
    .anounce__img .mb {
      display: none; } }
  @media screen and (orientation: portrait) {
    .anounce__img .mb {
      display: block;
      max-height: 90vh; } }
  @media screen and (orientation: landscape) {
    .anounce__img .dt {
      display: block;
      max-height: 90vh; } }
  @media screen and (orientation: portrait) {
    .anounce__img .dt {
      display: none; } }
  .anounce__bkg {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    z-index: 0;
    background-color: #9C99A2;
    opacity: .75; }
  .anounce__button {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    padding: 0.6944444vw 2.0833332vw;
    border-radius: 3.472222vw;
    background: none;
    color: #5F9F75;
    margin-top: 1.0416666vw;
    cursor: pointer;
    -webkit-transition: background .3s ease;
    transition: background .3s ease;
    font-size: 1.45833324vw;
    border: 1px solid #5F9F75; }
    .anounce__button:hover {
      background: #5F9F75;
      color: #E2F4DE;
      border: 1px solid #5F9F75; }
    @media screen and (max-width: 767px) {
      .anounce__button {
        font-size: 3.6458331vw;
        padding: 1.736111vw 5.208333vw; } }
  .anounce__close {
    position: absolute;
    right: 10px;
    top: 20px;
    color: #ffffff;
    width: 30px;
    height: 30px;
    z-index: 33; }
    .anounce__close:after {
      content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath fill='%23000000' d='M24 20.188l-8.315-8.209 8.2-8.282-3.697-3.697-8.212 8.318-8.31-8.203-3.666 3.666 8.321 8.24-8.206 8.313 3.666 3.666 8.237-8.318 8.285 8.203z'/%3E%3C/svg%3E");
      display: block;
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%; }

.cover-why {
  position: relative;
  padding: 9.0277772vw 0 0;
  background: #E2F4DE;
  color: #5F9F75; }
  @media screen and (max-width: 767px) {
    .cover-why {
      padding: 16.4930545vw 0 0; } }
  .cover-why:after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 6.944444vw;
    background-color: #F7F7F7; }
    @media screen and (max-width: 767px) {
      .cover-why:after {
        height: 17.36111vw; } }
  .cover-why__image {
    width: 41.666664vw;
    height: 43.2942680625vw;
    margin: 0 auto;
    position: relative;
    z-index: 2; }
    @media screen and (max-width: 767px) {
      .cover-why__image {
        width: 69.44444vw;
        height: 72.1571134375vw; } }
    .cover-why__image path {
      mix-blend-mode: multiply; }
    .cover-why__image .whypath {
      opacity: 0; }
    .cover-why__image .invisiblepath {
      opacity: 0; }
  .cover-why .page-title {
    margin-bottom: .5em; }

.page-guides {
  background: #F7F7F7;
  color: #9C99A2; }

.cover-guides {
  position: relative;
  padding: 9.0277772vw 0 0;
  background: #FF9F9D;
  color: #DA473C; }
  @media screen and (max-width: 767px) {
    .cover-guides {
      padding: 16.4930545vw 0 0; } }
  .cover-guides__image {
    width: 39.5833308vw;
    height: 39.5833308vw;
    margin: 0 auto;
    position: relative; }
    .cover-guides__image img {
      position: relative;
      z-index: 1; }
    @media screen and (max-width: 767px) {
      .cover-guides__image {
        width: 60.4166628vw;
        height: 60.4166628vw; } }
  .cover-guides__smile {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 2; }
    .cover-guides__smile #smile text {
      pointer-events: none; }
  .cover-guides__svg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    width: 39.5833308vw;
    height: 19.1898917899vw; }
    @media screen and (max-width: 767px) {
      .cover-guides__svg {
        width: 60.4166628vw;
        height: 29.2898348372vw; } }
    .cover-guides__svg .eye-outer {
      fill: none;
      stroke: none;
      stroke-width: 1; }
    .cover-guides__svg .eye-inner {
      fill: #000000; }
  .cover-guides .page-title {
    margin-bottom: .5em; }

.why {
  background-color: #F7F7F7;
  padding: 9.0277772vw 17vw 6.5972218vw;
  margin: 0 auto 0;
  text-align: left;
  color: #9C99A2; }
  @media screen and (max-width: 767px) {
    .why {
      padding: 16.4930545vw 10.416666vw 12.5972218vw; } }
  .why__text {
    max-width: 85%; }
    @media screen and (max-width: 767px) {
      .why__text {
        max-width: 100%; } }
  .why__subtext {
    font-size: 2.0833332vw; }
    @media screen and (max-width: 767px) {
      .why__subtext {
        font-size: 5.208333vw; } }
  .why__row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    margin-top: 6.2499996vw; }
    @media screen and (max-width: 767px) {
      .why__row {
        margin-top: 16.6666656vw;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        text-align: center; } }
  .why__col {
    width: 85%; }
    @media screen and (max-width: 767px) {
      .why__col {
        width: 100%; } }
    .why__col--image {
      width: 14%; }
      .why__col--image img {
        opacity: 0;
        -webkit-transform: translate3d(0, 100%, 0);
                transform: translate3d(0, 100%, 0);
        -webkit-transition: opacity .5s ease, -webkit-transform .5s ease;
        transition: opacity .5s ease, -webkit-transform .5s ease;
        transition: opacity .5s ease, transform .5s ease;
        transition: opacity .5s ease, transform .5s ease, -webkit-transform .5s ease; }
      @media screen and (max-width: 767px) {
        .why__col--image {
          width: 40%;
          margin-bottom: 1em; } }
      .why__col--image.in-view img {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0); }
  .why h2 {
    font-size: 3.33333312vw;
    font-weight: 700;
    line-height: 1;
    margin-top: 0;
    margin-bottom: .75em;
    color: #000000; }
    @media screen and (max-width: 767px) {
      .why h2 {
        font-size: 7.333332864vw; } }
  .why__button {
    color: #000000;
    margin-top: 3em; }
    .why__button--left {
      margin-top: 1.5em; }
    .why__button--center {
      text-align: center; }
  .why__guides {
    font-weight: 500; }
    .why__guides h3 {
      color: #FF9F9D;
      font-size: 1.66666656vw;
      line-height: 1.2;
      font-weight: 500;
      margin: 0;
      padding: 0;
      text-align: left; }
      @media screen and (max-width: 767px) {
        .why__guides h3 {
          font-size: 4.666666368vw;
          text-align: center; } }

.tree {
  background-color: #F6F4E0;
  padding: 0; }
  .tree .page-title {
    color: #000000;
    letter-spacing: -0.03em; }
  .tree__header {
    color: #E89700;
    background-color: #F2EC8C;
    padding: 6.5972218vw 0 0.01px 6.5972218vw; }
    .tree__header .headerwrap {
      width: 55%;
      padding-bottom: 1px; }
      @media screen and (max-width: 767px) {
        .tree__header .headerwrap {
          width: 90%; }
          .tree__header .headerwrap br {
            display: none; } }
  .tree .tree-subtitle {
    font-size: 3.33333312vw;
    font-weight: 700;
    line-height: 1;
    margin-top: 0;
    margin-bottom: .5em; }
    @media screen and (max-width: 767px) {
      .tree .tree-subtitle {
        font-size: 7.333332864vw; } }
  .tree__content {
    position: relative; }
  .tree__illustration {
    width: 37.7vw;
    position: absolute;
    right: 15.83333232vw;
    top: 0;
    z-index: 1; }
    .tree__illustration .textfly {
      opacity: 0; }
    @media screen and (max-width: 767px) {
      .tree__illustration {
        position: relative;
        height: auto;
        width: 100%;
        right: auto; } }
  .tree__wrap {
    width: 100%;
    height: 52.3654244306vw; }
    @media screen and (max-width: 767px) {
      .tree__wrap {
        width: 100%;
        height: 156.314699793vw; } }
  .tree__description {
    color: #499F72; }
    .tree__description h3 {
      font-size: 2.49999984vw;
      font-weight: 700;
      color: #E89700;
      margin-bottom: 0; }
      @media screen and (max-width: 767px) {
        .tree__description h3 {
          font-size: 6.2499996vw; } }
  .tree__impact {
    background-color: #F2EC8C;
    padding: 13.326388036vw 0 1.736111vw 6.5972218vw; }
  .tree__relations {
    background-color: #F6F1BE;
    padding: 1.736111vw 0 1.736111vw 6.5972218vw; }
  .tree__self {
    background-color: #F6F4E0;
    padding: 1.736111vw 0 0 6.5972218vw; }
    .tree__self p {
      margin-bottom: 0; }
  .tree__details {
    position: relative;
    z-index: 0; }
    .tree__details .extra p {
      margin: 0; }
    .tree__details h3 {
      font-size: 2.49999984vw;
      font-weight: 700;
      color: #E89700;
      margin-bottom: 0; }
      @media screen and (max-width: 767px) {
        .tree__details h3 {
          font-size: 6.2499996vw; } }
    .tree__details .orange {
      color: #499F72; }
    .tree__details b {
      color: #499F72; }
  .tree .tree-test {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    overflow: hidden; }
    .tree .tree-test .initial {
      opacity: 0; }
    .tree .tree-test__content #roots1, .tree .tree-test__content #roots2, .tree .tree-test__content #roots3, .tree .tree-test__content #roots4 {
      opacity: 0; }
    .tree .tree-test__inverse {
      width: 66%;
      height: 100vh;
      margin-left: 33%; }
      @media screen and (max-width: 767px) {
        .tree .tree-test__inverse {
          width: 100%;
          margin-left: 0; } }
  .tree .details-out {
    -webkit-transition: opacity .3s ease, -webkit-transform .3s ease;
    transition: opacity .3s ease, -webkit-transform .3s ease;
    transition: opacity .3s ease, transform .3s ease;
    transition: opacity .3s ease, transform .3s ease, -webkit-transform .3s ease; }
    .tree .details-out.out-view {
      opacity: 0;
      -webkit-transform: translate3d(10%, 0, 0);
              transform: translate3d(10%, 0, 0); }
  .tree .details-anim {
    opacity: 0;
    -webkit-transition: opacity .3s ease, -webkit-transform .3s ease;
    transition: opacity .3s ease, -webkit-transform .3s ease;
    transition: opacity .3s ease, transform .3s ease;
    transition: opacity .3s ease, transform .3s ease, -webkit-transform .3s ease;
    -webkit-transform: translate3d(20%, 0, 0);
            transform: translate3d(20%, 0, 0); }
    .tree .details-anim.in-view {
      opacity: 1;
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0); }
  .tree .self {
    left: 0;
    height: 150vh;
    padding: 0 0 0 6.5972218vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    @media screen and (max-width: 767px) {
      .tree .self {
        display: block;
        height: auto;
        overflow: hidden;
        padding: 0; } }
    .tree .self__text {
      width: 30%; }
      @media screen and (max-width: 767px) {
        .tree .self__text {
          width: 100%;
          padding: 6.5972218vw 6.5972218vw 0 6.5972218vw; } }
    .tree .self__tree {
      width: 66%; }
      @media screen and (max-width: 767px) {
        .tree .self__tree {
          width: 100%;
          padding-top: 6.5972218vw; } }
      .tree .self__tree img {
        display: none; }
        @media screen and (max-width: 767px) {
          .tree .self__tree img {
            display: block; } }
  .tree .trunk {
    left: 0;
    height: 150vh;
    background-color: #F6F1BE;
    padding: 0 0 0 6.5972218vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    @media screen and (max-width: 767px) {
      .tree .trunk {
        display: block;
        height: auto;
        overflow: hidden;
        padding: 0; } }
    .tree .trunk__text {
      width: 30%; }
      @media screen and (max-width: 767px) {
        .tree .trunk__text {
          width: 100%;
          padding: 6.5972218vw 6.5972218vw 0 6.5972218vw; } }
    .tree .trunk__tree {
      width: 66%; }
      @media screen and (max-width: 767px) {
        .tree .trunk__tree {
          width: 100%;
          padding-top: 6.5972218vw; } }
      .tree .trunk__tree img {
        display: none; }
        @media screen and (max-width: 767px) {
          .tree .trunk__tree img {
            display: block; } }
  .tree .crown {
    left: 0;
    height: 150vh;
    background-color: #F2EC8C;
    padding: 0 0 0 6.5972218vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    @media screen and (max-width: 767px) {
      .tree .crown {
        padding: 0;
        display: block;
        height: auto;
        overflow: hidden; } }
    .tree .crown__text {
      width: 30%; }
      @media screen and (max-width: 767px) {
        .tree .crown__text {
          padding: 6.5972218vw 6.5972218vw 0 6.5972218vw;
          width: 100%; } }
    .tree .crown__tree {
      width: 66%; }
      @media screen and (max-width: 767px) {
        .tree .crown__tree {
          width: 100%;
          padding-top: 6.5972218vw; } }
      .tree .crown__tree img {
        display: none; }
        @media screen and (max-width: 767px) {
          .tree .crown__tree img {
            display: block; } }

/*# sourceMappingURL=style.css.map */
