@charset "UTF-8";
/*!
 Theme Name:   Mentoring Matters
 Description:   Mentoring Matters
 Author:       Frederik Delmotte
 Author URI:   http://frederikdelmotte.com
 Version:      1.0.1
*/
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
}

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

nav ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

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

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

/* 
 * variables
 */
/* Default Equations */
/* Penner Equations (approximated) originally created by @robpenner */
/* 
 * mixins
 */
/* 
 * functions
 */
/*
 * keyframe animation
 */
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes coverRightToLeftPortrait {
  0% {
    transform: translateX(88.5%);
  }
  0.5% {
    transform: translateX(88.5%);
  }
  10% {
    transform: translateX(0);
  }
  90% {
    transform: translateX(0);
  }
  99.5% {
    transform: translateX(88.5%);
  }
  100% {
    transform: translateX(88.5%);
  }
}
@keyframes coverRightToLeftLandscape {
  0% {
    transform: translateX(100%);
  }
  0.5% {
    transform: translateX(100%);
  }
  10% {
    transform: translateX(6.5vh);
  }
  90% {
    transform: translateX(6.5vh);
  }
  99.5% {
    transform: translateX(100%);
  }
  100% {
    transform: translateX(100%);
  }
}
@keyframes coverLeftToRightPortrait {
  0% {
    transform: translateX(-100%);
  }
  0.5% {
    transform: translateX(-100%);
  }
  10% {
    transform: translateX(-12.5%);
  }
  90% {
    transform: translateX(-12.5%);
  }
  99.5% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(-100%);
  }
}
@keyframes coverLeftToRightLandscape {
  0% {
    transform: translateX(-100%);
  }
  0.5% {
    transform: translateX(-100%);
  }
  10% {
    transform: translateX(-6.5vh);
  }
  90% {
    transform: translateX(-6.5vh);
  }
  99.5% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(-100%);
  }
}
/* 
 * fonts
*/
@font-face {
  font-family: "Soehne";
  src: url("fonts/MMSohneSchmalHalbfett-Regular.woff2") format("woff2");
  font-style: normal;
  font-stretch: normal;
}
@font-face {
  font-family: "ITCFranklinGothic";
  src: url("fonts/ITCFranklinGothicLTProDemi.woff2") format("woff2");
  font-style: normal;
  font-stretch: normal;
}
@font-face {
  font-family: "MMCorrespondance-Regular";
  src: url("fonts/MMCorrespondance-Regular.woff2") format("woff2");
  font-style: normal;
  font-stretch: normal;
}
/* 
 * vars
*/
:root {
  --border-color: #000;
  --hover-color: #fff;
  --header-text-color: #000;
  --footer-text-color: #000;
  --caption-color: #fff;
  --background-color: #fff;
}

/* 
 * global
 */
body {
  color: #000;
}

h1, h2, h3, p, a, ul li, input, dt, dd {
  color: inherit;
}

a {
  color: inherit;
  text-decoration: none;
  outline: none;
}

img {
  max-width: 100%;
  padding: 0;
  margin: 0;
}

img,
video {
  -moz-user-select: -moz- none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  -o-user-select: none;
  user-select: none;
  -moz-user-drag: -moz- none;
  -webkit-user-drag: none;
  user-drag: none;
}

main, section, aside, div {
  position: relative;
}

/* 
 * typography
 */
body {
  font-family: "ITCFranklinGothic", sans-serif;
}

h1, h2, h3, p, a, span, ul li {
  font-style: normal;
  font-stretch: normal;
  font-weight: normal;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
}

h1, h2 {
  font-family: "Soehne", sans-serif;
}

header a,
footer a,
h3,
section:not(.title) span,
a.button,
section:not(#get-involved_blocks) .block .text p {
  font-family: "MMCorrespondance-Regular", sans-serif;
  font-style: normal;
  font-stretch: normal;
}

header a,
footer a,
h2,
h3,
section:not(#get-involved_blocks) .block .text p,
a.button,
figcaption,
aside p {
  text-transform: uppercase;
}

header a,
footer a,
figcaption,
aside p {
  font-size: 12px;
  line-height: 14px;
}

h3,
section:not(#get-involved_blocks) .block .text p {
  font-size: 15px;
  line-height: 15px;
}

p,
ul li {
  font-size: 16px;
  line-height: 17px;
}

a.button {
  position: relative;
  display: inline-block;
  size: 80px;
  padding: 12px 20px;
  border: 1.25px solid var(--border-color);
  border-radius: 29px;
  left: 50%;
  transform: translate(-50%);
  margin-top: 50px;
  font-size: 19px;
}
a.button:after {
  content: " →";
}
a.button:hover {
  background: var(--border-color);
  color: var(--hover-color);
}

ul {
  list-style: disc;
  padding-left: 20px;
}

/* 
 * layout
 */
body header {
  position: sticky;
  z-index: 2;
  top: 0;
  left: 0;
  right: 0;
  display: flex;
  justify-content: space-between;
  padding: 15px;
  color: var(--header-text-color);
}
body header > div {
  display: flex;
  gap: 20px;
  align-items: center;
}
body header > div > a,
body header > a {
  position: relative;
  z-index: 2;
}
body header > div > a.js-menu {
  display: none;
}
body header a.js-toggle {
  display: block;
  width: 18px;
  height: 10px;
  border: 1px solid var(--header-text-color);
  border-radius: 5px;
}
body header a.js-toggle:after {
  content: "";
  position: absolute;
  height: 6px;
  width: 6px;
  border-radius: 3px;
  left: 2px;
  top: 2px;
  transition: left 0.4s cubic-bezier(0.075, 0.82, 0.165, 1);
  background: var(--header-text-color);
}
body header a.js-toggle.active:after {
  left: 10px;
}
body header a {
  transition: color 0.4s cubic-bezier(0, 0, 0.58, 1);
}
body header a.js-toggle {
  transition: color 0.4s cubic-bezier(0, 0, 0.58, 1), border-color 0.4s cubic-bezier(0, 0, 0.58, 1);
}
@media screen and (max-width: 1019px) {
  body header > div > a.js-menu {
    display: block;
  }
  body header nav {
    position: fixed;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: #FF6BFF;
    display: none;
    z-index: 1;
    padding: 29px 0 55px 0;
  }
  body header nav a {
    font-size: 80px;
    line-height: 60px;
    color: #F91434;
    font-family: "Soehne", sans-serif;
    overflow: hidden;
  }
  body header nav a.mobile_exclude {
    display: none;
  }
  body.menu {
    --footer-text-color: #F91434;
  }
  body.menu header {
    margin-top: 0 !important;
  }
  body.menu header nav {
    display: flex;
  }
  body.menu header a {
    color: #F91434;
  }
  body.menu header a.js-toggle {
    display: none;
  }
  body.menu footer {
    position: fixed;
    margin-top: 0;
    bottom: 0;
    left: 0;
    right: 0;
  }
}
body footer {
  position: relative;
  display: flex;
  border-top: 1px solid var(--footer-text-color);
  justify-content: center;
  z-index: 4;
  color: var(--footer-text-color);
}
body footer nav {
  padding: 20px;
  display: flex;
  gap: 20px;
}
body.home header {
  margin-top: calc(100vh - (100vw - 30px) / 0.9191073919 - 59px);
  margin-top: calc(var(--vh, 1vh) * 100 - (var(--vw, 1vw) * 100 - 30px) / 0.9191073919 - 59px);
}
body.home #main-wrapper {
  width: 100%;
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
  overflow-y: scroll;
}
body.home main {
  margin-top: calc((100vh - (100vw - 30px) / 0.9191073919 - 59px + 44px) * -1);
  margin-top: calc((var(--vh, 1vh) * 100 - (var(--vw, 1vw) * 100 - 30px) / 0.9191073919 - 59px + 44px) * -1);
  z-index: 1;
}
body.home main section#cover, body.home main section.title, body.home main section.logos,
body.home main section .gallery > div, body.home main section:not(.logos):not(.title) .text,
body.home main section .table {
  scroll-snap-align: start;
}
body.home main section#cover {
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
}
body.home main section#cover > div {
  position: absolute;
  width: 100%;
  height: 100%;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  display: none;
}
body.home main section#cover > div > aside {
  position: absolute;
  top: 15px;
  left: 15px;
  right: 15px;
  opacity: 1;
  transition: opacity 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
}
@media (min-aspect-ratio: 3.3/4) {
  body.home main section#cover > div > aside {
    display: none;
  }
}
body.home main section#cover > div > span {
  display: block;
  overflow: hidden;
  width: calc(100% - 15px);
  height: calc(100% - 30px);
}
body.home main section#cover > div > span span {
  display: block;
  width: 115%;
  height: 100%;
  mask-image: url(img/mm.svg);
  mask-repeat: no-repeat;
  mask-size: contain;
}
@media (min-aspect-ratio: 659/717) {
  body.home main section#cover > div > span span {
    width: 100%;
  }
}
body.home main section#cover > div > span:nth-of-type(1) {
  padding: 15px 0 15px 15px;
}
body.home main section#cover > div > span:nth-of-type(1) span {
  mask-position: bottom right;
}
@media (min-aspect-ratio: 659/717) {
  body.home main section#cover > div > span:nth-of-type(1) span {
    mask-position: center right;
  }
}
body.home main section#cover > div > span:nth-of-type(2) {
  padding: 15px 15px 15px 0;
}
body.home main section#cover > div > span:nth-of-type(2) span {
  mask-position: bottom left;
}
@media (min-aspect-ratio: 659/717) {
  body.home main section#cover > div > span:nth-of-type(2) span {
    mask-position: center left;
  }
}
body.home main section#cover > div.active {
  display: flex;
}
body.home main section#cover > div.active > span:nth-of-type(1) span {
  animation: coverRightToLeftPortrait 6s cubic-bezier(0.645, 0.045, 0.355, 1) forwards;
}
@media (min-aspect-ratio: 659/717) {
  body.home main section#cover > div.active > span:nth-of-type(1) span {
    animation: coverRightToLeftLandscape 6s cubic-bezier(0.645, 0.045, 0.355, 1) forwards;
  }
}
body.home main section#cover > div.active > span:nth-of-type(2) span {
  animation: coverLeftToRightPortrait 6s cubic-bezier(0.645, 0.045, 0.355, 1) forwards;
}
@media (min-aspect-ratio: 659/717) {
  body.home main section#cover > div.active > span:nth-of-type(2) span {
    animation: coverLeftToRightLandscape 6s cubic-bezier(0.645, 0.045, 0.355, 1) forwards;
  }
}
body.home main section.title {
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  -webkit-user-select: none; /* Safari */
  -ms-user-select: none; /* IE 10 and IE 11 */
  user-select: none; /* Standard syntax */
}
body.home main section.title h2 {
  text-align: center;
  line-height: 74%;
  letter-spacing: -0.01em;
  font-feature-settings: "liga", "clig";
}
body.home main section.slideshow .text p, body.home main section.grid .text p, body.home main section.logos .text p, body.home main section#get-involved_blocks.blocks .text p, body.home main section#sponsors .text p, body.home main section#donate .text p {
  margin-top: 4px;
}
body.home main section.slideshow, body.home main section.grid, body.home main section.blocks, body.home main section.logos {
  width: 100vw;
  width: calc(var(--vw, 1vw) * 100);
}
body.home main section.slideshow .text,
body.home main section.slideshow .gallery > div, body.home main section.grid .text,
body.home main section.grid .gallery > div, body.home main section.blocks .text,
body.home main section.blocks .gallery > div, body.home main section.logos .text,
body.home main section.logos .gallery > div {
  width: 100%;
  height: 100%;
}
body.home main section.slideshow .text h3, body.home main section.grid .text h3, body.home main section.blocks .text h3, body.home main section.logos .text h3 {
  display: flex;
  gap: 60px;
}
body.home main section.slideshow .text h3 span, body.home main section.grid .text h3 span, body.home main section.blocks .text h3 span, body.home main section.logos .text h3 span {
  display: block;
}
body.home main section.slideshow .text .wrapper, body.home main section.grid .text .wrapper, body.home main section.blocks .text .wrapper, body.home main section.logos .text .wrapper {
  padding: 15px;
}
body.home main section.slideshow .text,
body.home main section.slideshow .gallery > div, body.home main section.grid .text,
body.home main section.grid .gallery > div, body.home main section.blocks .text,
body.home main section.blocks .gallery > div, body.home main section.logos .text,
body.home main section.logos .gallery > div {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
}
@media screen and (max-width: 1019px) {
  body.home main section.slideshow .gallery, body.home main section.grid .gallery, body.home main section.blocks .gallery, body.home main section.logos .gallery {
    display: inline-flex;
    height: 100vh;
    height: calc(var(--vh, 1vh) * 100);
    overflow-x: auto;
    scroll-snap-align: start;
    scroll-snap-stop: always;
    scroll-snap-type: x mandatory;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
  body.home main section.slideshow .gallery::-webkit-scrollbar, body.home main section.grid .gallery::-webkit-scrollbar, body.home main section.blocks .gallery::-webkit-scrollbar, body.home main section.logos .gallery::-webkit-scrollbar {
    display: none;
  }
  body.home main section.slideshow .gallery > div, body.home main section.grid .gallery > div, body.home main section.blocks .gallery > div, body.home main section.logos .gallery > div {
    flex: 0 0 100vw;
    flex: 0 0 calc(var(--vw, 1vw) * 100);
  }
  body.home main section.slideshow .gallery.no-snap, body.home main section.grid .gallery.no-snap, body.home main section.blocks .gallery.no-snap, body.home main section.logos .gallery.no-snap {
    scroll-snap-type: none;
  }
}
body.home main section.slideshow .gallery > div figure, body.home main section.grid .gallery > div figure, body.home main section.blocks .gallery > div figure, body.home main section.logos .gallery > div figure {
  padding: 60px 15px;
  width: calc(100% - 30px);
}
body.home main section.slideshow .gallery > div figure img,
body.home main section.slideshow .gallery > div figure video, body.home main section.grid .gallery > div figure img,
body.home main section.grid .gallery > div figure video, body.home main section.blocks .gallery > div figure img,
body.home main section.blocks .gallery > div figure video, body.home main section.logos .gallery > div figure img,
body.home main section.logos .gallery > div figure video {
  position: relative;
  z-index: 1;
  height: 100%;
  width: 100%;
  object-fit: contain;
}
body.home main section.slideshow .gallery > div figure figcaption, body.home main section.grid .gallery > div figure figcaption, body.home main section.blocks .gallery > div figure figcaption, body.home main section.logos .gallery > div figure figcaption {
  position: absolute;
  z-index: 2;
  bottom: 15px;
  right: 15px;
  left: 15px;
  display: flex;
  justify-content: space-between;
}
body.home main section.slideshow .gallery > div figure figcaption > span:nth-of-type(1), body.home main section.grid .gallery > div figure figcaption > span:nth-of-type(1), body.home main section.blocks .gallery > div figure figcaption > span:nth-of-type(1), body.home main section.logos .gallery > div figure figcaption > span:nth-of-type(1) {
  display: flex;
  gap: 25px;
}
@media screen and (max-width: 1019px) {
  body.home main section.slideshow .text, body.home main section.grid .text, body.home main section#get-involved_blocks.blocks .text {
    align-items: flex-start;
  }
  body.home main section.slideshow .text .wrapper, body.home main section.grid .text .wrapper, body.home main section#get-involved_blocks.blocks .text .wrapper {
    padding: 65px 15px 15px;
  }
}
body.home main section#get-involved_blocks.blocks .text, body.home main section.slideshow .text {
  flex-direction: column;
  justify-content: space-between;
}
body.home main section#get-involved_blocks.blocks .text .button, body.home main section.slideshow .text .button {
  margin-top: 0;
  margin-bottom: 90px;
}
body.home main section.grid .table, body.home main section.blocks .table {
  display: flex;
  flex-wrap: wrap;
  background: inherit;
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
}
body.home main section.grid .table > div, body.home main section.blocks .table > div {
  width: 50%;
  height: 20%;
}
body.home main section.grid .table > div figure figcaption,
body.home main section.grid .table > div figure img,
body.home main section.grid .table > div figure video, body.home main section.blocks .table > div figure figcaption,
body.home main section.blocks .table > div figure img,
body.home main section.blocks .table > div figure video {
  position: absolute;
}
body.home main section.grid .table > div figure figcaption, body.home main section.blocks .table > div figure figcaption {
  z-index: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 10px;
  text-align: center;
  width: calc(100% - 20px);
  height: calc(100% - 20px);
}
body.home main section.grid .table > div figure img,
body.home main section.grid .table > div figure video, body.home main section.blocks .table > div figure img,
body.home main section.blocks .table > div figure video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 2;
}
body.home main section.grid .table > div figure:hover img,
body.home main section.grid .table > div figure:hover video, body.home main section.blocks .table > div figure:hover img,
body.home main section.blocks .table > div figure:hover video {
  opacity: 0;
}
body.home main section#sponsors h3, body.home main section#donate h3 {
  display: flex;
  gap: 60px;
}
body.home main section#sponsors h3 span, body.home main section#donate h3 span {
  display: block;
}
body.home main section#sponsors {
  padding: 40px 15px;
  height: calc(100vh - 80px);
  height: calc(var(--vh, 1vh) * 100 - 80px);
  gap: 60px;
  justify-content: start;
}
body.home main section.logos .text {
  align-items: start;
  height: auto;
  min-height: calc(100vh - 200px);
  min-height: calc(var(--vh, 1vh) * 100 - 200px);
  padding: 100px 0;
}
body.home main section .logos_brands {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  row-gap: 40px;
  column-gap: 40px;
  margin-top: 40px;
  padding: 0 15px;
}
body.home main section .logos_brands figure {
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-position: center;
  width: calc(50% - 20px);
  height: 60px;
}
@media screen and (max-width: 1019px) {
  body.home main section#sponsors {
    height: auto;
    min-height: calc(100vh - 80px);
    min-height: calc(var(--vh, 1vh) * 100 - 80px);
  }
  body.home main section#sponsors .logos_brands {
    flex-direction: column;
  }
  body.home main section#sponsors .logos_brands figure {
    height: 50px;
  }
  body.home main section.logos .logos_brands {
    flex-wrap: wrap;
    justify-content: space-between;
  }
  body.home main section .logos_brands figure.hide {
    display: none;
  }
}
body.home main section#donate {
  padding: 40px 15px 70px;
  height: calc(100vh - 110px);
  height: calc(var(--vh, 1vh) * 100 - 110px);
  justify-content: space-between;
}
body.home footer {
  margin-top: -54px;
}
body.error_404 header, body.default header {
  position: absolute;
}
body.error_404 main section, body.default main section {
  padding: 160px 15px;
  min-height: calc(100vh - 320px);
  min-height: calc(var(--vh, 1vh) * 100 - 320px);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
body.error_404 main section h3, body.error_404 main section p, body.error_404 main section ul, body.default main section h3, body.default main section p, body.default main section ul {
  width: 100%;
  max-width: 720px;
}
body.error_404 main section h3, body.default main section h3 {
  display: flex;
  flex-wrap: wrap;
  column-gap: 60px;
  row-gap: 0px;
  margin-bottom: 60px;
}
body.error_404 main section p, body.error_404 main section ul, body.default main section p, body.default main section ul {
  margin-bottom: 1em;
}
body.error_404 main section p:last-child, body.error_404 main section ul:last-child, body.default main section p:last-child, body.default main section ul:last-child {
  margin-bottom: 0;
}
body.error_404 main section p a, body.default main section p a {
  text-decoration: none;
}
body.error_404 footer, body.default footer {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}
body.error_404.gray, body.default.gray {
  --footer-text-color: #000 !important;
}
body.loading * {
  cursor: wait;
}
body.no-snap #main-wrapper {
  scroll-snap-type: none;
}
body.gray {
  --footer-text-color: #fff !important;
}
body.gray.menu header nav {
  background: #000;
}
body.gray.menu header a {
  color: #fff;
}
body.gray section#cover div {
  color: #000 !important;
}
body.gray section#cover div > span {
  background-color: #fff !important;
}
body.gray section#cover div > span span {
  background-color: #ddd !important;
}
body.gray [data-color].even {
  color: #000 !important;
  background: #fff !important;
}
body.gray [data-color].even .logos_brands figure {
  background: #000 !important;
}
body.gray [data-color].even .text {
  color: #000 !important;
  background: #fff !important;
}
body.gray [data-color].even .table {
  color: #fff !important;
  background: #000 !important;
}
body.gray [data-color].even * {
  border-color: #000 !important;
  --border-color: #000 !important;
  --hover-color: #fff !important;
}
body.gray [data-color].odd {
  color: #fff !important;
  background: #000 !important;
}
body.gray [data-color].odd .logos_brands figure {
  background: #fff !important;
}
body.gray [data-color].odd .text {
  color: #fff !important;
  background: #000 !important;
}
body.gray [data-color].odd .table {
  color: #000 !important;
  background: #fff !important;
}
body.gray [data-color].odd * {
  border-color: #fff !important;
  --border-color: #fff !important;
  --hover-color: #000 !important;
}
body.hide-cover-text main section#cover > div > aside {
  opacity: 0;
}

/* 
 * media queries
 */
@media screen and (min-width: 1020px) {
  body header {
    padding: 10px;
  }
  body header nav {
    display: flex;
    gap: 20px;
  }
  body footer nav {
    padding: 30px;
  }
  body.home header {
    margin-top: calc(50vh - 17px);
    margin-top: calc(var(--vh, 1vh) * 50 - 17px);
  }
  body.home main {
    margin-top: calc(-50vh - 17px);
    margin-top: calc(var(--vh, 1vh) * -50 - 17px);
  }
  body.home main section.title .text .wrapper, body.home main section.slideshow .text .wrapper, body.home main section.grid .text .wrapper, body.home main section.logos .text .wrapper {
    padding: 0;
    width: calc(( ( ( ( var( --vw, 1vw ) * 100 ) - ( ( 10 - 1 ) * 10px ) - ( 2 * 10px ) ) / 10 ) * 6 ) + ( ( 6 - 1 ) * 10px ));
  }
  body.home main section.title .gallery > div figure, body.home main section.slideshow .gallery > div figure, body.home main section.grid .gallery > div figure, body.home main section.logos .gallery > div figure {
    height: calc(100% - 200px);
    width: calc(100% - 200px);
  }
  body.home main section.title .gallery > div.xs figure, body.home main section.slideshow .gallery > div.xs figure, body.home main section.grid .gallery > div.xs figure, body.home main section.logos .gallery > div.xs figure {
    height: calc(100% - 400px);
    width: calc(100% - 400px);
  }
  body.home main section.title .gallery > div.s figure, body.home main section.slideshow .gallery > div.s figure, body.home main section.grid .gallery > div.s figure, body.home main section.logos .gallery > div.s figure {
    height: calc(100% - 350px);
    width: calc(100% - 350px);
  }
  body.home main section.title .gallery > div.m figure, body.home main section.slideshow .gallery > div.m figure, body.home main section.grid .gallery > div.m figure, body.home main section.logos .gallery > div.m figure {
    height: calc(100% - 300px);
    width: calc(100% - 300px);
  }
  body.home main section.title .gallery > div.l figure, body.home main section.slideshow .gallery > div.l figure, body.home main section.grid .gallery > div.l figure, body.home main section.logos .gallery > div.l figure {
    height: calc(100% - 250px);
    width: calc(100% - 250px);
  }
  body.home main section.title .gallery > div.xl figure, body.home main section.slideshow .gallery > div.xl figure, body.home main section.grid .gallery > div.xl figure, body.home main section.logos .gallery > div.xl figure {
    height: calc(100% - 200px);
    width: calc(100% - 200px);
  }
  body.home main section.title .gallery > div figure figcaption, body.home main section.slideshow .gallery > div figure figcaption, body.home main section.grid .gallery > div figure figcaption, body.home main section.logos .gallery > div figure figcaption {
    bottom: auto;
    top: 50%;
    left: 50%;
    transform: translate3d(-50%, -50%, 0);
  }
  body.home main section.slideshow .gallery > div figure figcaption {
    justify-content: center;
    gap: 25px;
    color: var(--caption_color);
  }
  body.home main section.slideshow .gallery > div figure figcaption > span > span:nth-of-type(1) {
    display: none;
  }
  body.home main section.blocks .block {
    display: flex;
    scroll-snap-align: start;
    scroll-snap-stop: always;
  }
  body.home main section.blocks .block .gallery > div figure figcaption {
    bottom: 60px;
    right: auto;
  }
  body.home main section.blocks .block:nth-child(odd) .gallery > div figure figcaption {
    left: calc(var(--vw, 1vw) * -50 + 60px);
    width: calc(var(--vw, 1vw) * 50 - 120px);
  }
  body.home main section.blocks .block:nth-child(even) {
    flex-direction: row-reverse;
  }
  body.home main section.blocks .block:nth-child(even) .gallery > div figure figcaption {
    left: calc(var(--vw, 1vw) * 50 + 60px);
    width: calc(var(--vw, 1vw) * 50 - 120px);
  }
  body.home main section.blocks .block .text .wrapper {
    padding: 60px;
  }
  body.home main section.blocks .block .text .wrapper .button {
    margin-top: 80px;
    left: 0;
    transform: none;
  }
  body.home main section.blocks .block .text,
  body.home main section.blocks .block .gallery {
    width: 50%;
    height: 100vh;
    height: calc(var(--vh, 1vh) * 100);
  }
  body.home main section.blocks .block .gallery > div {
    position: absolute;
    width: 100%;
    height: 100%;
    /*

    &:not(:first-child){
    	display: none;
    }
    */
    display: none;
  }
  body.home main section.blocks .block .gallery > div.active {
    display: block;
  }
  body.home main section.blocks .block .gallery > div figure {
    padding: 0;
    width: 100%;
    height: 100%;
  }
  body.home main section.blocks .block .gallery > div figure img,
  body.home main section.blocks .block .gallery > div figure video {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  body.home main section#get-involved_blocks.blocks .block .text .wrapper {
    padding: 0;
    width: calc(( ( ( ( var( --vw, 1vw ) * 100 ) - ( ( 10 - 1 ) * 10px ) - ( 2 * 10px ) ) / 10 ) * 3 ) + ( ( 3 - 1 ) * 10px ));
  }
  body.home main section#get-involved_blocks.blocks .text, body.home main section.slideshow .text {
    justify-content: center;
  }
  body.home main section#get-involved_blocks.blocks .text .button, body.home main section.slideshow .text .button {
    position: absolute;
    margin-bottom: 0;
  }
  body.home main section#get-involved_blocks.blocks .text .button {
    bottom: calc(16.6666666667vh - 23px);
    transform: translateX(0);
    left: calc( ( ( ( ( var( --vw, 1vw ) * 100 ) - ( ( 10 - 1 ) * 10px ) - ( 2 * 10px ) ) / 10 ) * 1 ) + ( ( 1 - 1 ) * 10px ) + 20px );
  }
  body.home main section.slideshow .text .button {
    bottom: calc(25vh - 23px);
  }
  body.home main section.grid .table > div {
    width: 25%;
    height: 33.3333333333%;
  }
  body.home main section.blocks .table {
    width: 50%;
    height: auto;
  }
  body.home main section.blocks .table > div {
    width: 50%;
    height: 33.3333333333vh;
    height: calc(var(--vh, 1vh) * 100 / 3);
  }
  body.home main section#sponsors .text, body.home main section#donate .text {
    width: calc(( ( ( ( var( --vw, 1vw ) * 100 ) - ( ( 10 - 1 ) * 10px ) - ( 2 * 10px ) ) / 10 ) * 6 ) + ( ( 6 - 1 ) * 10px ));
  }
  body.home main section#sponsors .text {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  body.home main section.logos .text {
    align-items: center;
    height: 100vh;
    height: calc(var(--vh, 1vh) * 100);
    padding: 0;
  }
  body.home main section .logos_brands {
    padding: 0;
    margin-top: 60px;
    width: calc(( ( ( ( var( --vw, 1vw ) * 100 ) - ( ( 10 - 1 ) * 10px ) - ( 2 * 10px ) ) / 10 ) * 6 ) + ( ( 6 - 1 ) * 10px ));
    column-gap: 40px;
    row-gap: 80px;
  }
  body.home main section .logos_brands figure {
    width: calc(20% - 32px);
    height: 80px;
    mask-size: 100%, contain;
  }
  body.home main section#sponsors .logos_brands {
    justify-content: center;
    column-gap: 60px;
  }
  body.home main section#sponsors .logos_brands figure {
    width: calc(25% - 45px);
    mask-size: 90%, contain;
  }
  body.home main section#donate {
    padding: 40px 10px 120px;
    height: calc(100vh - 160px);
    height: calc(var(--vh, 1vh) * 100 - 160px);
  }
  body.home footer {
    margin-top: -74px;
  }
  body.gray main .slideshow figcaption {
    color: #fff !important;
  }
}
/*
 * STICKY
*/
body.home main section#cover, body.home main section.title, body.home main section:not(#get-involved_blocks) .table {
  position: sticky;
  top: 0;
}
body.home main section.slideshow .text,
body.home main section.slideshow .gallery > div, body.home main section.grid .text,
body.home main section.grid .gallery > div, body.home main section.blocks .text,
body.home main section.blocks .gallery > div, body.home main section.logos .text,
body.home main section.logos .gallery > div {
  position: sticky;
  top: 0;
}
body.home main section#sponsors {
  position: relative;
}
@media screen and (max-width: 1019px) {
  body.home main section.slideshow .text {
    position: relative;
    height: auto;
    min-height: 100vh;
    min-height: calc(var(--vh, 1vh) * 100);
  }
}
@media screen and (min-width: 1020px) {
  body.home main section:not(#get-involved_blocks) .block, body.home main section.logos {
    position: sticky;
    top: 0;
  }
}

/*
 * SCROLLSNAP

body.home{

	#main-wrapper{
		scroll-snap-type: y mandatory;
		overscroll-behavior: contain;
	}

}
 */
/*
 * unqiu scroll
*/
@media screen and (min-width: 1020px) {
  body.home section#get-involved_blocks .block:nth-of-type(2) {
    background: transparent !important;
  }
  body.home section#get-involved_blocks .block:nth-of-type(2) .table {
    margin-top: 100vh;
    margin-top: calc(var(--vh, 1vh) * 100);
  }
  body.stick-table section#get-involved_blocks .block:nth-of-type(1) {
    position: sticky;
    top: 0;
    margin-bottom: 66.6666666667vh;
    margin-bottom: calc(var(--vh, 1vh) * 100 / 3 * 2);
  }
  body.stick-table section#get-involved_blocks .block:nth-of-type(1) .table {
    position: absolute;
    right: 0;
    bottom: 0;
  }
}

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