body {
  font-size: 16px;
  font-family: sans-serif;
  background: url("data:image/svg+xml,%3c?xml version='1.0' encoding='UTF-8'?%3e%3csvg version='1.1' viewBox='0 0 160 100' xmlns='http://www.w3.org/2000/svg'%3e%3cdefs%3e%3cpattern id='g' width='10' height='10' patternTransform='translate(0) scale(10)' patternUnits='userSpaceOnUse'%3e%3ccircle cx='2.567' cy='.81' r='.01' fill='%23fff'/%3e%3ccircle cx='3.048' cy='2.33' r='.01' fill='%23fff'/%3e%3ccircle cx='4.418' cy='2.415' r='.01' fill='%23fff'/%3e%3ccircle cx='1.844' cy='3.029' r='.02' fill='%23fff'/%3e%3ccircle cx='6.08' cy='1.363' r='.01' fill='%23fff'/%3e%3ccircle cx='5.819' cy='4.413' r='.01' fill='%23fff'/%3e%3ccircle cx='4.305' cy='4.048' r='.01' fill='%23fff'/%3e%3ccircle cx='5.541' cy='3.045' r='.01' fill='%23fff'/%3e%3ccircle cx='4.785' cy='5.527' r='.02' fill='%23fff'/%3e%3ccircle cx='2.667' cy='5.184' r='.01' fill='%23fff'/%3e%3ccircle cx='7.965' cy='1.448' r='.01' fill='%23fff'/%3e%3ccircle cx='7.047' cy='5.049' r='.01' fill='%23fff'/%3e%3ccircle cx='4.34' cy='.895' r='.02' fill='%23fff'/%3e%3ccircle cx='7.125' cy='.34' r='.01' fill='%23fff'/%3e%3ccircle cx='9.55' cy='1.049' r='.01' fill='%23fff'/%3e%3ccircle cx='7.006' cy='2.689' r='.01' fill='%23fff'/%3e%3ccircle cx='8.909' cy='2.689' r='.02' fill='%23fff'/%3e%3ccircle cx='9.315' cy='4.407' r='.01' fill='%23fff'/%3e%3ccircle cx='7.82' cy='3.87' r='.01' fill='%23fff'/%3e%3ccircle cx='8.27' cy='5.948' r='.01' fill='%23fff'/%3e%3ccircle cx='7.973' cy='7.428' r='.02' fill='%23fff'/%3e%3ccircle cx='9.342' cy='8.072' r='.01' fill='%23fff'/%3e%3ccircle cx='8.206' cy='9.315' r='.02' fill='%23fff'/%3e%3ccircle cx='9.682' cy='9.475' r='.01' fill='%23fff'/%3e%3ccircle cx='9.688' cy='6.186' r='.01' fill='%23fff'/%3e%3ccircle cx='3.379' cy='6.296' r='.01' fill='%23fff'/%3e%3ccircle cx='2.871' cy='8.204' r='.01' fill='%23fff'/%3e%3ccircle cx='4.59' cy='8.719' r='.01' fill='%23fff'/%3e%3ccircle cx='3.181' cy='9.671' r='.01' fill='%23fff'/%3e%3ccircle cx='5.734' cy='7.315' r='.02' fill='%23fff'/%3e%3ccircle cx='6.707' cy='6.513' r='.01' fill='%23fff'/%3e%3ccircle cx='5.73' cy='9.67' r='.01' fill='%23fff'/%3e%3ccircle cx='6.535' cy='8.373' r='.01' fill='%23fff'/%3e%3ccircle cx='4.37' cy='7.154' r='.02' fill='%23fff'/%3e%3ccircle cx='.622' cy='7.25' r='.01' fill='%23fff'/%3e%3ccircle cx='.831' cy='5.679' r='.01' fill='%23fff'/%3e%3ccircle cx='1.257' cy='8.519' r='.02' fill='%23fff'/%3e%3ccircle cx='1.989' cy='6.877' r='.01' fill='%23fff'/%3e%3ccircle cx='.374' cy='3.181' r='.01' fill='%23fff'/%3e%3ccircle cx='1.166' cy='1.664' r='.01' fill='%23fff'/%3e%3ccircle cx='1.151' cy='.093' r='.02' fill='%23fff'/%3e%3ccircle cx='1.151' cy='10.09' r='.01' fill='%23fff'/%3e%3ccircle cx='1.302' cy='4.451' r='.01' fill='%23fff'/%3e%3ccircle cx='3.047' cy='3.763' r='.01' fill='%23fff'/%3e%3c/pattern%3e%3clinearGradient id='b' x1='49.07' x2='49.09' y1='4.435' y2='81.05' gradientTransform='matrix(1.84 0 0 1.274 -10.78 -3.962)' gradientUnits='userSpaceOnUse'%3e%3cstop stop-color='%23002040' offset='0'/%3e%3cstop stop-color='%23003679' offset='1'/%3e%3c/linearGradient%3e%3cfilter id='c' x='-.001193' y='-.0009542' width='1.002' height='1.002' color-interpolation-filters='sRGB'%3e%3cfeGaussianBlur stdDeviation='0.039758114'/%3e%3c/filter%3e%3c/defs%3e%3cg fill-rule='evenodd' stroke-linecap='round' stroke-linejoin='round'%3e%3crect y='2.529e-9' width='160' height='100' ry='0' fill='url(%23b)' stroke-width='1.532'/%3e%3crect transform='matrix(.9966 0 0 .9987 .1346 .06733)' width='80' height='100' ry='0' fill='url(%23g)' filter='url(%23c)' opacity='.5'/%3e%3crect transform='matrix(.9976 0 0 .9981 80.1 .09524)' width='80' height='100' ry='0' fill='url(%23g)' filter='url(%23c)' opacity='.5'/%3e%3c/g%3e%3c/svg%3e");
  background-position: top center;
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
  margin: 0;
  padding: 0;
}

.container {
  max-width: 984px;
  margin: 0 auto;
  padding: 0 20px;
}
#main {
  padding: 50px 0 100px 0;
  background: url("data:image/svg+xml,%3c?xml version='1.0' encoding='UTF-8'?%3e%3csvg version='1.1' viewBox='0 0 160 100' xmlns='http://www.w3.org/2000/svg'%3e%3cdefs%3e%3cradialGradient id='a' cx='37.92' cy='97.48' r='56.14' gradientTransform='matrix(2.916,0,0,1.209,-67.53,-3.709)' gradientUnits='userSpaceOnUse'%3e%3cstop stop-color='%2300b632' offset='0'/%3e%3cstop stop-color='%2300c832' offset='.4176'/%3e%3cstop stop-color='%232fffeb' stop-opacity='.4157' offset='.4469'/%3e%3cstop stop-color='%230030c8' stop-opacity='0' offset='1'/%3e%3c/radialGradient%3e%3cclipPath id='d'%3e%3crect width='80' height='100' ry='0' fill-rule='evenodd' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.083'/%3e%3c/clipPath%3e%3c/defs%3e%3cg fill-rule='evenodd' stroke-linecap='round' stroke-linejoin='round'%3e%3cellipse transform='matrix(2 0 0 1.042 0 -4.186)' cx='43.03' cy='114.1' rx='163.7' ry='67.85' clip-path='url(%23d)' fill='url(%23a)'/%3e%3c/g%3e%3c/svg%3e");
  background-position: top center;
  background-repeat: no-repeat;
  background-size: cover;
}
#main h1,
#main p {
  display: inline-block;
  background: #fff;
  color: #000;
  padding: 10px 50px 10px 20px;
  margin: 10px auto 10px 0;
  box-shadow: 5px 5px 5px 1px rgba(0,0,0,0.4);
}
#filler {
  height: 110vh;
}
#footer {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background: #fff;
  color: #000;
  border: 1px solid #ccc;
}
#footer .container {
  position: relative;
}

.flying {
  position: absolute;
}
.flying-object {
  display: block;
  width: 22px;
  height: 16px;
  background-image: url("data:image/svg+xml,%3csvg version='1.1' viewBox='0 0 544 366' xml:space='preserve' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='m345 26.6-56.1-12.8-20.2 9.84-38.4-12.8-32 9.35-30.5-9.35-25.6 23.1-35.4-4.92-36.4 22.2-51.7 1.48-9.35 21.2 22.2 19.2-17.7 51.2 13.3 39.9-0.492 41.3 31 28 20.6 11.2 4.55 24.7 37.9 9.35 64.5-12.3 43.3 14.3 33.5-8.37 43.3 8.86 42.3-24.6 45.8-7.87 23.6-34.9 10.3-46.3-27.6-114 41.8-22.6-14.8-31.5-31.5 6.89-15.3-13.3z' fill='%23e6e6e6' stroke='%23000' stroke-width='.64px'/%3e%3cpath d='m176 2.81c-14.7 0-27.9 7.8-35 20.1-6.94-2.57-14.3-3.91-21.8-3.91-19.5 0-38 9.28-49.7 24.6-3.77-1.08-7.79-1.35-11.7-0.764-4.32-3.8-9.92-5.97-15.8-5.97-5.74 0-11.2 2.03-15.5 5.69-14.9 0.595-26.8 12.9-26.8 28 0 14.4 10.9 26.2 24.8 27.8-0.039 0.302-0.0742 0.606-0.106 0.91-12.7 11.8-19.9 28.3-19.9 45.7 0 14.2 4.77 27.8 13.5 38.8-2.07 6.29-3.12 12.8-3.12 19.6 0 30.8 22.4 56.9 52.6 61.7 2.32 1.95 4.74 3.83 7.22 5.63v8.61c0 15 9.65 19.1 23.8 26.6 8.01 3.39 16.2 3.15 21.9 3.37 4.18-0.16 15.8-1.99 20.9-3.36 8.64-2.71 12.4-4.88 18.3-8.01 1.89 0.272 3.8 0.409 5.73 0.409 5.09 0 10-0.934 14.8-2.78h5.67c0.484 0.41 0.984 0.8 1.48 1.19 6.64 4.46 6.48 4.22 13.9 8.53 8.56 3.9 17.9 5.97 27.5 5.97 11.6 0 23.6-4.74 33.5-10.4 8.95 3.32 11.1 3.61 16.3 5.05 8.01 2.05 12.2 3.86 21.6 3.83 6.02 0.0123 12.8-0.942 19.8-3.78 11-4.2 18.6-8.46 26-15 5.46-6.6 11-6.24 14.6-6.24 4.26 0 8.42-0.43 12.4-1.24 4.99-1.52 10.3-2.46 16.5-5.89 19.9-10.5 33.6-31.4 33.6-55.4 0-1.96-0.0975-3.95-0.292-5.95 8.37-7.63 13.2-18.5 13.2-30 0-10-3.76-19.7-10.4-27.1-0.138-2.93-0.382-5.85-0.714-8.76h30c31.3 0 58.8-16.4 58.8-47.7-3e-3 -31.3-17.2-49.3-46.8-59.3l-19.2-6.46c-2.48-14.8-15.4-26.1-30.8-26.1-5.48 0-10.7 1.4-15.4 4.03-7.37-6.58-17-10.4-27-10.4-12.2 0-23.6 5.48-31.2 14.7-4.92-2.07-10.2-3.16-15.6-3.16-1.83 0-3.66 0.123-5.47 0.37-7.38-6.57-17-10.3-26.9-10.3-9.59 0-18.7 3.32-25.9 9.32-10.8-8.25-24-12.7-37.8-12.7-11 0-21.6 2.84-31.1 8.26-7-5.31-15.6-8.26-24.5-8.26zm0 16.2c6.81 0 13.1 2.75 17.8 7.74 2.79 2.99 7.37 3.43 10.7 1.04 7.93-5.74 17.3-8.78 27.1-8.78 12.3 0 23.8 4.75 32.5 13.4 1.64 1.62 3.89 2.47 6.19 2.33 2.3-0.141 4.43-1.25 5.86-3.06 4.65-5.87 11.6-9.24 19.1-9.24 6.94 0 13.6 2.99 18.2 8.2 2.02 2.28 5.15 3.23 8.09 2.47 2-0.515 4.06-0.776 6.12-0.776 2.76 0 5.46 0.476 8.01 1.37-1.08 3.69-1.04 5.56-1.04 9.43 0 4.48 3.63 8.11 8.11 8.11 4.48 0 8.11-3.63 8.11-8.11 0-4.04 0.341-5.92 2.23-9.45 4.24-7.95 12.5-12.9 21.5-12.9 7.77 0 14.9 3.58 19.5 9.83 1.4 1.89 3.56 3.08 5.91 3.25 2.36 0.173 4.66-0.685 6.32-2.35 2.85-2.85 6.63-4.41 10.6-4.41 8.3 0 15.1 6.75 15.1 15.1 0 0.559-0.03 1.11-0.09 1.65-0.026 0.164-0.0478 0.33-0.0638 0.496-1.05 7.29-7.33 12.9-14.9 12.9-3.28 0-6.42-1.06-9.06-3.06-1.88-1.43-4.29-1.96-6.59-1.46-2.31 0.494-4.28 1.97-5.42 4.04-1.46 2.68-3.4 5.03-5.76 7.01-3.14 2.63-3.83 7.19-1.6 10.6 4.86 7.5 7.43 16.2 7.43 25.1 0 2.43-0.19 4.86-0.564 7.24-0.755 4.79-2.26 9.41-4.47 13.8-1.76 3.44-0.837 7.64 2.19 10 3.64 2.88 5.74 7.18 5.74 11.8 0 4.48 3.63 8.11 8.11 8.11h1.65c0.536 4.09 0.874 8.22 0.968 12.4 0.049 2.18 0.976 4.26 2.57 5.75 4.99 4.65 7.73 11 7.73 17.8-4e-3 7.89-3.87 15.3-10.3 19.9-2.56 1.81-3.86 4.93-3.32 8.02 0.468 2.69 0.705 5.38 0.705 8 0 25.5-20.8 46.3-46.3 46.3-3.36 0-9.1 1.02-18.7 4.51-7.8 4.45-11.2 6.21-14.3 10.9-4.33 6.91-13.1 10.9-28.4 10.9-12.2 0-16.8-1.48-24.1-5.79-2.03-2.6-5.58-5.32-8.1-6.09-2.53-0.767-5.27-0.253-7.35 1.38-8.92 6.99-19.6 10.7-31 10.7-12.8 0-24.9-4.8-34.3-13.5-1.5-1.4-3.48-2.18-5.53-2.18h-10.4c-1.13 0-2.25 0.238-3.29 0.698-5.65 2.51-12.1 2.77-18 0.659-2.15-0.771-4.53-0.598-6.54 0.478-2.02 1.07-3.49 2.95-4.05 5.16-5.5 6-14.4 8.52-27.4 8.52-15.6 0-28.3-9.62-28.3-15.5v-12.8c0-2.69-1.33-5.2-3.56-6.71-3.88-2.62-7.6-5.49-11.1-8.52-1.23-1.07-2.75-1.75-4.37-1.94-23.2-2.76-40.8-22.5-40.8-46 0-6.26 1.23-12.3 3.65-18 1.25-2.95 0.645-6.36-1.55-8.7-8.07-8.61-12.5-19.8-12.5-31.6 0-13.8 6.11-26.8 16.8-35.6 1.83-1.52 2.9-3.76 2.93-6.14 0.047-3.83 0.966-7.5 2.73-10.9 1.6-3.08 1.06-6.83-1.33-9.34-2.4-2.51-6.12-3.21-9.27-1.76-1.56 0.722-3.2 1.09-4.88 1.09-6.49 0-11.8-5.28-11.8-11.8 0-6.49 5.28-11.8 11.8-11.8 0.396 0 0.814 0.023 1.24 0.07 2.72 0.287 5.4-0.798 7.14-2.91 1.47-1.79 3.65-2.82 5.96-2.82 2.54 0 4.92 1.26 6.37 3.37 2.1 3.06 6 4.3 9.48 3.03 3.49-1.28 7.24-0.833 10.3 1.08 1.85 1.16 4.09 1.53 6.22 1.02 2.13-0.511 3.95-1.86 5.07-3.74 8.32-14 23.6-22.6 39.8-22.6 7.69 0 15.3 1.92 22 5.55 2.13 1.15 4.67 1.3 6.91 0.384 2.24-0.912 3.96-2.78 4.69-5.09 3.18-10.2 12.5-17 23.2-17z'/%3e%3cpath d='m433 75.4c-3.35 0-6.07 2.72-6.07 6.07s2.72 6.07 6.07 6.07c3.35 0 6.07-2.72 6.07-6.07 1e-3 -3.35-2.72-6.07-6.07-6.07z' fill='%23ffffe9'/%3e%3ccircle cx='448' cy='96' r='87.4' fill='%232ad4ff' fill-opacity='.3' stroke='%23000' stroke-width='17.2'/%3e%3crect x='105' y='304' width='28.7' height='61.8' ry='3.02'/%3e%3crect x='288' y='304' width='28.7' height='61.8' ry='3.02'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
}
.space {
  position: relative;
  overflow: hidden;
}
#sheep-1 {
  top: 30vh;
  left: -100%;
  animation: sheep-fly 18s ease-in-out infinite;
  transform: scale(0.9);
  opacity: 0.8;
}
#sheep-1 .flying-object {
  animation: sheep-rotate 4s linear infinite;
}
#sheep-2 {
  top: 65vh;
  left: -100%;
  animation: sheep-fly-2 12s ease-in-out infinite;
  transform: scale(6);
  animation-delay: 7s;
}
#sheep-2 .flying-object {
  animation: sheep-rotate 14s linear infinite;
}
#sheep-3 {
  top: 95vh;
  left: -100%;
  animation: sheep-fly 32s ease-in-out infinite,  sheep-fly-3 32s ease-in-out infinite;
  animation-direction: reverse;;
  transform: scale(0.7);
  animation-delay: 10s;
  opacity: 0.6;
}
#sheep-3 .flying-object {
  animation: sheep-rotate 6s linear infinite;
}


@keyframes sheep-fly {
  0% { left: -100%; }
  12% { left: -10%;  }
  50% {  transform: translate(0,-20vh) scale(1); }
  88% { left: 110%;  }
  100% { left: 200%; }
}

@keyframes sheep-fly-2 {
  0% { left: -100%; }
  30% { left: -10%;  }
  50% {  transform: translate(0,-20vh) scale(0.9); }
  70% { left: 110%;  }
  100% { left: 200%;  transform: scale(6); }
}
@keyframes sheep-fly-3 {
  50% {  transform: translate(0,-12vh) scale(0.9); }
}

@keyframes sheep-rotate {
  0% { transform: rotate(0); }
  100% { transform: rotate(360deg); }
}

/*** bootstrap stub ***/
.d-flex {
  display: -ms-flexbox;
  -ms-flex-wrap: wrap;
  display: flex;
  flex-wrap: wrap;
}
.align-content-center {
  -ms-flex-line-pack: center;
  align-content: center;
}
.align-content-between {
  -ms-flex-line-pack: justify;
  align-content: space-between;
}
.align-content-stretch {
  -ms-flex-line-pack: stretch;
  align-content: stretch;
}
.align-content-end {
  -ms-flex-line-pack: flex-end;
  align-content: flex-end;
}
.justify-content-between {
  justify-content: space-between;
}

.row {
  box-sizing: border-box;
  display: -ms-flexbox;
  -ms-flex-wrap: wrap;
  display: flex;
  flex-wrap: wrap;
}
.row > * {
  flex-shrink: 0;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

.col {
  flex: 1 0 0%;
}
.row-cols-auto > * {
  flex: 0 0 auto;
  width: auto;
}

.col-12 {
  flex: 0 0 auto;
  width: 100%;
}
.col-10 {
  -ms-flex: 0 0 83.3333%;
  flex: 0 0 83.3333%;
  width: 83.3333%;
}
.col-9 {
  -ms-flex: 0 0 75%;
  flex: 0 0 75%;
  width: 75%;
}
.col-8 {
  -ms-flex: 0 0 66.6666%;
  flex: 0 0 66.6666%;
  width: 66.6666%;
}
.col-7 {
  -ms-flex: 0 0 58.3333%;
  flex: 0 0 58.3333%;
  width: 58.3333%;
}
.col-6 {
  -ms-flex: 0 0 50%;
  flex: 0 0 50%;
  width: 50%;
}
.col-5 {
  -ms-flex: 0 0 41.6666%;
  flex: 0 0 41.6666%;
  width: 41.6666%;
}
.col-4 {
  -ms-flex: 0 0 33.3333%;
  flex: 0 0 33.3333%;
  width: 33.3333%;
}
.col-3 {
  -ms-flex: 0 0 25%;
  flex: 0 0 25%;
  width: 25%;
}
.col-2 {
  -ms-flex: 0 0 16.6666%;
  flex: 0 0 16.6666%;
  width: 16.6666%;
}
.col-1 {
  -ms-flex: 0 0 8.3333%;
  flex: 0 0 8.3333%;
  width: 8.3333%;
}

.col-sm-12,.col-md-12,.col-12,
.col-sm-10,.col-md-10,.col-10,
.col-sm-9,.col-md-9,.col-9,
.col-sm-8,.col-md-8,.col-8,
.col-sm-7,.col-md-7,.col-7,
.col-sm-6,.col-md-6,.col-6,
.col-sm-5,.col-md-5,.col-5,
.col-sm-4,.col-md-4,.col-4,
.col-sm-3,.col-md-3,.col-3,
.col-sm-2,.col-md-2,.col-2,
.col-sm-1,.col-md-1,.col-1,
.col {
  box-sizing: border-box;
}

@media (prefers-color-scheme: dark) {
  #main h1,
  #main p {
    background: #333;
    color: #fff;
    box-shadow: 5px 5px 5px 1px rgba(0,0,0,0.1);
  }
  #footer {
    background: #333;
    color: #fff;
    border: 1px solid #666;
  }
}
