body {
  font-family: proxima-nova, sans-serif;
  font-style: normal;
  font-weight: 300;
  font-size: 1.905vw;
  line-height: 1.21875;
  color: #696A6D; }

.main > div {
  margin: 0; }

.desktop_banner {
  flex-basis: 58%;
  flex-grow: 1;
  background-image: url("/images/banner.jpg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover; }

.mobile_banner {
  display: none; }

.content_wrapper {
  flex-basis: 42%;
  max-width: 718px;
  position: relative; }
  .content_wrapper .content {
    position: absolute;
    top: 5px;
    bottom: 5px;
    right: -15px;
    overflow-y: scroll;
    margin-right: -30px;
    padding-right: 30px;
    left: -100vw;
    padding-left: 100vw; }
  .content_wrapper::before, .content_wrapper::after {
    content: '';
    position: absolute; }
  .content_wrapper::before {
    z-index: -2;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: url(/images/border.png);
    background-size: cover; }
  .content_wrapper::after {
    z-index: -1;
    top: 5px;
    bottom: 5px;
    left: 5px;
    right: 5px;
    background: #fff; }

.content-inner {
  position: relative; }

ul {
  padding: 0;
  margin: 0 16%; }

li {
  position: relative;
  display: block;
  z-index: 1;
  margin: 1em 0;
  padding: 1em;
  color: #212825; }
  li::before, li::after {
    content: '';
    position: absolute; }
  li::before {
    z-index: -2;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: url(/images/border.png);
    background-size: cover; }
  li::after {
    z-index: -1;
    top: 3px;
    bottom: 3px;
    left: 3px;
    right: 3px;
    background: #fff; }

.section {
  min-height: 100vh;
  display: flex;
  flex-direction: column; }
  .section:not(:first-child) {
    justify-content: center; }
  .section > p:first-child {
    margin-top: 0;
    font-size: 125%;
    margin-bottom: 2em; }

.logo {
  width: 15%;
  position: relative;
  margin: 1.25em 1.7em 0 auto; }
  .logo::before {
    content: '';
    display: block;
    width: 100%;
    padding-bottom: 89%;
    background-image: url("/images/logo_desktop.png");
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat; }

.header {
  margin: 0 16%; }
  .header h1 {
    margin: 0; }

@supports (background: -webkit-linear-gradient(0deg, #FFB259 0%, #A32035 100%)) and (-webkit-background-clip: text) and (-webkit-text-fill-color: transparent) {
  h1 {
    font-size: 5.714vw;
    line-height: 0.9;
    background: -webkit-linear-gradient(0deg, #FFB259 0%, #A32035 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent; } }

@supports not ((background: -webkit-linear-gradient(0deg, #FFB259 0%, #A32035 100%)) and (-webkit-background-clip: text) and (-webkit-text-fill-color: transparent)) {
  .header h1 {
    display: none; }
  .header::after {
    visibility: visible;
    content: '';
    display: block;
    width: 100%;
    padding-bottom: 74.03%;
    background-image: url("/images/h1_nowebkit.png");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain; } }

h1 span:last-child:after {
  content: ' ';
  display: block;
  height: 0.1em; }

h2 {
  font-size: 1.429vw;
  line-height: 1.21;
  font-weight: bold;
  color: #B30838; }

h2, p {
  margin: 1em 16%; }

p.small, li {
  font-size: 1.07vw;
  line-height: 1.21;
  color: #212825; }

a {
  color: #B30838; }

.scroll {
  font-size: 0.83vw;
  letter-spacing: 0.05em;
  color: #696A6D;
  cursor: pointer;
  margin: 0 auto;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: flex;
  flex-direction: column;
  align-items: center; }
  .scroll::before {
    content: '';
    display: block;
    width: 15px;
    height: 102px;
    background-image: url("/images/scroll_arrow.png");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    margin-bottom: 1em; }
  .scroll span {
    opacity: 0.5; }

@media screen and (min-width: 1680px) {
  body {
    font-size: 32px; }
  h1 {
    font-size: 96px; }
  h2 {
    font-size: 24px; }
  p.small, li {
    font-size: 18px; }
  .scroll {
    font-size: 14px; } }

@media screen and (min-width: 1001px) {
  .main {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    overflow: auto;
    overflow-x: hidden;
    display: flex; } }

@media screen and (max-width: 1000px) {
  body, .section > p:first-child {
    font-size: 5.33vw; }
  .desktop_banner {
    display: none; }
  .mobile_banner {
    display: block;
    background-image: url("/images/banner.jpg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    margin-bottom: 2em; }
    .mobile_banner::before {
      content: '';
      display: block;
      width: 100%;
      padding-bottom: 58.4%; }
  .content_wrapper::before, .content_wrapper::after {
    display: none; }
  .content_wrapper .content {
    position: unset;
    margin-right: 0;
    padding-right: 0;
    overflow-y: unset;
    padding-left: 0; }
  .section {
    min-height: unset;
    margin-top: 1em;
    margin-bottom: 2em; }
    .section > p:last-child {
      margin-bottom: 0; }
  @supports (background: -webkit-linear-gradient(0deg, #FFB259 0%, #A32035 100%)) and (-webkit-background-clip: text) and (-webkit-text-fill-color: transparent) {
    h1 {
      font-size: 9.6vw; } }
  @supports not ((background: -webkit-linear-gradient(0deg, #FFB259 0%, #A32035 100%)) and (-webkit-background-clip: text) and (-webkit-text-fill-color: transparent)) {
    .header::after {
      background-image: url(/images/h1_nowebkit_mobile.png);
      padding-bottom: 23.33%; } }
  h2 {
    font-size: 4.8vw;
    margin-top: 0;
    margin-bottom: 0; }
  p {
    margin-bottom: 2em; }
  p.small, li {
    font-size: 3.733vw; }
  .scroll {
    display: none; }
  .header, ul {
    margin: 0 8.27%; }
  h2, p {
    margin: 1em 8.27%; }
  .logo {
    width: 50%;
    margin: 0 auto 1.25em 8.27%; }
    .logo::before {
      padding-bottom: 20.59%;
      background-image: url("/images/logo_mobile.png"); }
  .content_wrapper {
    flex-basis: 100%;
    max-width: 100%; } }
