/* --------------------------------------------------
   reset
-------------------------------------------------- */

* { 
  box-sizing:border-box;
  outline:0;
}

html { 
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

html, body, div, span, applet, object, iframe,h1, h2, h3, h4, h5, h6, p, blockquote, pre,a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,small, strike, strong, sub, sup, tt, var,
b, u, i, center,dl, dt, dd, ol, ul, li,fieldset, form, label, legend,table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

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

ol, ul { list-style: none; }

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

::selection { background:black; color:white; }
::-moz-selection { background:black; color:white; }





  /* --------------------------------------------------
     variables
  -------------------------------------------------- */

  :root {
      --color-pink : #F76F9D;

  }





  /* --------------------------------------------------
     fonts
  -------------------------------------------------- */


/* inter-200 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Inter';
  font-style: normal;
  font-weight: 200;
  src: url('fonts/inter-v20-latin-200.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* inter-200italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Inter';
  font-style: italic;
  font-weight: 200;
  src: url('fonts/inter-v20-latin-200italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* inter-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/inter-v20-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* inter-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Inter';
  font-style: italic;
  font-weight: 400;
  src: url('fonts/inter-v20-latin-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* inter-800 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Inter';
  font-style: normal;
  font-weight: 800;
  src: url('fonts/inter-v20-latin-800.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* inter-800italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Inter';
  font-style: italic;
  font-weight: 800;
  src: url('fonts/inter-v20-latin-800italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}


/* --------------------------------------------------
   typography
-------------------------------------------------- */

html {
  font-size:15px;
}

  @media only screen and (min-width :  600px) { html { font-size:16px; } }
  @media only screen and (min-width :  800px) { html { font-size:17px; } }
  @media only screen and (min-width : 1000px) { html { font-size:18px; } }
  @media only screen and (min-width : 1200px) { html { font-size:19px; } }

body {
  font-family:'Inter','Roboto','Arial',sans-serif;
  font-size:1rem;
  line-height:1.6;
  color:#333;
}

h1,h2,h3, .heading {
  line-height: 1.1;
  text-transform: uppercase;
  hyphens:auto;
}

h1 {
  font-size:4rem;
  font-weight:900;
  margin-bottom:3rem;
}

h2 {
    font-size:2.5rem;
    font-weight:900;
    margin-bottom: 3rem;
}

h3 {
  font-size: 1.5rem;
  font-weight: 900;
  margin-bottom: 1rem;
}

p {
  margin:1.6rem 0;
}

p:first-child {
  margin-top:0;
}

p:last-child {
  margin-bottom:0;
}

a {
  color:#1fb0f9;
}

strong {
    font-weight:700;
}

em {
  font-style:italic;
}

.small {
  font-size:80%;
}

.button {
  display: inline-block;
  font-weight:900;
  background:var(--colorYellow);
  border:none;
  border-radius: .5rem;
  padding:1rem;
  font-size:.8rem;
  color:black;
  text-align:center;
  text-transform:uppercase;
  text-decoration:none;
  margin:0;
}

.button:hover { 
}


/* --------------------------------------------------
   splash screen
-------------------------------------------------- */

.splash {
  position:relative;
  z-index:2;
  height:100vh;
  overflow:scroll;
  scroll-timeline-name: --splash;
}

  .splash-content {
    width:100vw;
    height:300vh;
    position:relative;
    pointer-events:none;
  }

    .splash-content-illustration {
      position:fixed;    
      left: calc(50% - 17.5vmin);
      top:15vmin;
      width:35vmin;
      z-index:1;
    }

      .splash-content-illustration-catapult {
        stroke-width:25; 
      }

      .splash-content-illustration-heart {
        /*--heartSize: 18vmin;
        margin-left: calc(var(--heartSize) / 2 * (-1));
        width: var(--heartSize);*/
        position: absolute;
        left: 50%;
        width: 18vmin;
        margin-left: -9vmin;
        top: 3vmin;
        fill:var(--color-pink);
        animation: heartThrow 1ms ease;
        animation-timeline: --splash;
        animation-duration: 1ms;

      }

      @keyframes heartThrow {
          0% { width:18vmin;  margin-left:-9vmin;   top:3vmin; }
         20% { width:12vmin;  margin-left:-6vmin;   top:6vmin;  }
         30% { width:10vmin;  margin-left:-5vmin;   top:7vmin;  }
         80% { width:8vmin;   margin-left:-4vmin;   top:8vmin;  }
        100% { width:300vmin; margin-left:-150vmin; top:-60vmin;  }
      }

      @keyframes heartThrow2 {
          0% { transform: scale(1); }
         20% { transform: scale(.8); }
         30% { transform: scale(.6); }
         80% { transform: scale(.5); }
        100% { transform: scale(25); }
      }

      @keyframes heartThrow3 {
          0% { --heartSize: 18vmin; }
         20% { --heartSize: 12vmin; }
         30% { --heartSize: 10vmin; }
         80% { --heartSize: 8vmin; }
        100% { --heartSize: 200vmin; }
      }

    .splash-content-title {
      color:black;
      font-weight:800;
      font-size:6vmin;
      margin-top:3vmin;
      text-align: center;
      position: fixed;
      left: 0;
      right: 0;
      top: 60vmin;
      z-index:0;
    }


/* --------------------------------------------------
   introduction
-------------------------------------------------- */

.intro {
  position:relative;
  z-index:3;
  display:flex;
  width:100vw;
  min-height:100vh;
  align-items:center;
  background:var(--color-pink);
  color:white;
}

  .intro-content {
    padding:2rem;
    max-width:40rem;
    margin:auto;
  }

    .intro-content ul {
      list-style:disc;
    }

      .intro-content li {
        margin-left:1rem;
        padding:.5rem 0;
      }