@import url(https://fonts.googleapis.com/css2?family=Rock+3D&display=swap);
@import url(https://fonts.googleapis.com/css2?family=Passion+One:wght@400;700;900&family=Space+Grotesk:wght@300..700&display=swap);
/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

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;
}
/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}
body {
  line-height: 1;
}
ol,
ul {
  list-style: none;
}
blockquote,
q {
  quotes: none;
}
blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}

* {
  box-sizing: border-box;
}
html {
  font-size: calc(1vw / 14.4);
}
body {
  font-family: 'PT Root UI', Arial, Helvetica, sans-serif;
  min-height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #eee;
}
main {
  height: 100%;
  display: flex;
  align-items: flex-end;
  width: 70%;
  margin: 0 auto;
  background: linear-gradient(
    135deg,
    rgba(209, 209, 209, 1) 0%,
    rgb(184, 187, 209) 20%,
    rgba(207, 207, 207, 1) 47%,
    rgb(209, 213, 231) 77%,
    rgba(224, 224, 224, 1) 100%
  );
  /* background: radial-gradient(circle at 100% 0%, #b6cde8, transparent 60%),
    linear-gradient(65deg, #dfdfdf, rgb(190, 190, 190) 50%); */
  border-radius: 30rem;
  position: relative;
}
section {
  position: relative;
  height: 100%;
}
footer {
  width: 100%;
  display: flex;
  background-color: #cccccc2f;
  border-radius: 60rem 60rem 0 0;
  gap: 20rem;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  padding: 20rem 20rem;
  margin-bottom: 0;
}
footer > * {
  width: 4%;
}
footer img {
  width: 100%;
}
.sasart {
  border-radius: 100%;
}
.arrow {
  position: absolute;
  top: 0;
  right: 0;
  width: 10%;
  height: 10%;
  background-image: url(images/40b00b2f35cb96abc7de.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: right top;
  z-index: 100;
  transition: background-image 1s ease;
}
.arrow:hover {
  background-image: url(images/4f71b16ad4e14a5bcd77.svg);
  transition: background-image 1s ease;
}
#poster {
  width: 50%;
  border-radius: 30rem 0 0 30rem;
  overflow: hidden;
}
#description {
  width: 50%;
  height: 100%;
  /* padding: 20rem; */
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 20rem;
}
#description > h1,
#description > p {
  padding: 0 20rem;
}
#description h1 {
  font-size: 30rem;
  font-weight: 500;
  padding-top: 20rem;
}
#description p {
  font-size: 16rem;
}
#description .role {
  font-size: 14rem;
  color: #555;
  transform: translateY(16rem);
}
blockquote {
  width: 96%;
  background: rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(10px);
  border: 1rem solid rgba(255, 255, 255, 0.2);
  box-shadow: 0 8rem 32rem rgba(0, 0, 0, 0.1);
  border-radius: 20rem;
  padding: 40rem;
  position: relative;
  z-index: 2;
  margin: 30rem auto 0;
}
blockquote p {
  line-height: 1.3;
}
blockquote::before {
  font-family: 'Passion One', sans-serif;
  font-weight: 400;
  content: '"';
  font-size: 120rem;
  position: absolute;
  top: -10%;
  -webkit-text-stroke: 1rem #efefef;
  color: rgba(255, 255, 255);
  text-shadow: 4rem 2rem 5rem rgba(100, 100, 100, 0.5);
}
blockquote p:nth-of-type(2) {
  text-align: right;
  color: #69677c;
  margin-top: 10rem;
}
@media screen and (max-width: 1279px) {
  #description h1 {
    font-size: 40rem;
  }
  #description p {
    font-size: 22rem;
  }
  .blockquote::before {
    top: -6%;
  }
}
@media screen and (max-width: 768px) {
  body {
    align-items: flex-start;
  }
  main {
    flex-direction: column;
    width: 100%;
    border-radius: 0;
  }
  #poster {
    border-radius: 0 0 70rem 70rem;
  }
  section,
  #poster,
  #description {
    width: 100%;
  }
  #description > h1,
  #description > p {
    padding: 0 30rem;
  }
  #description h1 {
    font-size: 70rem;
    padding-top: 30rem;
  }
  #description p {
    font-size: 40rem;
  }
  #description .role {
    font-size: 30rem;
    transform: translateY(10rem);
  }
  .arrow {
    left: 0;
    width: 20%;
    height: 20%;
    background-image: url(images/83ebb5e3f44646517b4d.svg);
  }
  .arrow:hover {
    background-image: url(images/d209b37a1f119a4a5b34.svg);
  }
  blockquote {
    padding: 60rem 40rem 30rem;
  }
  blockquote::before {
    font-size: 190rem;
  }
}

@media screen and (max-width: 500px) {
  #poster {
    border-radius: 0 0 70rem 70rem;
  }
  #description {
    margin-top: 20rem;
    gap: 60rem;
  }
  #description > h1,
  #description > p {
    padding: 0 60rem;
  }
  #description h1 {
    font-size: 110rem;
    padding-top: 60rem;
  }
  #description p {
    font-size: 80rem;
  }
  #description .role {
    font-size: 50rem;
    transform: translateY(40rem);
  }
  blockquote {
    padding: 100rem;
    border-radius: 60rem;
  }
  blockquote::before {
    font-size: 340rem;
    top: -4%;
    text-shadow: 8rem 8rem 10rem rgba(100, 100, 100, 0.3);
  }
  blockquote p:nth-of-type(2) {
    margin-top: 40rem;
  }
  footer > * {
    width: 10%;
  }
  footer {
    gap: 40rem;
  }
}

#poster {
  width: calc(1190rem / 2.3);
  height: calc(1660rem / 2.3);
  position: relative;
  background-color: white;
  background-image: url(images/7d209e17ec0e6d92767d.svg);
  background-size: cover;
}
#poster h1,
#poster h1::after {
  font-family: 'Rock 3D', system-ui;
  font-weight: 400;
  font-size: 40rem;
  color: #4a4aff;
  text-transform: uppercase;
  z-index: 2;
}
#poster h1 {
  width: 70%;
  -webkit-text-stroke: 0.3rem #4a4aff;
  position: relative;
  margin: 50rem 0 0 50rem;
}
#poster h1::after {
  content: 'Island of stability';
  width: 100%;
  position: absolute;
  top: 0;
  left: 1rem;
}
.pixels {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.pixels img {
  width: 100%;
}
.pixels::after {
  content: '';
  position: absolute;
  top: 5%;
  right: 0;
  width: 4rem;
  height: 4rem;
  background-color: white;
  animation: glitch 4s steps(40) infinite alternate;
}
.human {
  width: 15rem;
  height: 15rem;
  background-image: url(images/e35efc8c1dde564c4f06.svg);
  background-size: 75rem 15rem;
  background-position: -30rem 0;
  position: absolute;
  animation: human 6s steps(1) infinite reverse;
}
.human:nth-of-type(1) {
  top: 150rem;
  left: 300rem;
}
.human:nth-of-type(2) {
  top: 200rem;
  left: 250rem;
}
.human:nth-of-type(3) {
  top: 230rem;
  left: 80rem;
}
.human:nth-of-type(4) {
  top: 240rem;
  left: 410rem;
}
.human:nth-of-type(5) {
  top: 400rem;
  left: 120rem;
}
.human:nth-of-type(6) {
  top: 370rem;
  left: 136rem;
}
.human:nth-of-type(7) {
  top: 430rem;
  left: 330rem;
}
.human:nth-of-type(8) {
  top: 550rem;
  left: 405rem;
}
.human:nth-of-type(9) {
  top: 565rem;
  left: 285rem;
}
.human:nth-of-type(10) {
  top: 579rem;
  left: 208rem;
}
@keyframes human {
  2% {
    background-position: 0 0;
  }
  4% {
    background-position: -15rem 0;
  }
  6% {
    background-position: -30rem 0;
  }
  8% {
    background-position: -45rem 0;
  }
  10% {
    background-position: -60rem 0;
  }
  12% {
    background-position: -45rem 0;
  }
  14% {
    background-position: -30rem 0;
  }
  16% {
    background-position: -15rem 0;
  }
  18% {
    background-position: 0 0;
  }
  20% {
    background-position: -15rem 0;
  }
  22% {
    background-position: -30rem 0;
  }
  24% {
    background-position: -45rem 0;
  }
  26% {
    background-position: -60rem 0;
  }
  28% {
    background-position: -45rem 0;
  }
  30% {
    background-position: -30rem 0;
  }
}
@keyframes glitch {
  0% {
    top: 4%;
  }
  10% {
    /* width: 20%; */
    right: 10%;
  }
  20% {
    /* width: 13%; */
    right: 4%;
  }
  30% {
    /* width: 6%; */
    right: 30%;
  }
  40% {
    /* width: 12%; */
    right: 20%;
  }
  50% {
    /* width: 40%; */
    right: 30%;
  }
  60% {
    /* width: 22%; */
    right: 50%;
  }
  70% {
    /* width: 5%; */
    right: 70%;
  }
  80% {
    /* width: 30%; */
    right: 60%;
  }
  90% {
    /* width: 30%; */
    right: 88%;
  }
  100% {
    top: 96%;
  }
}

@media screen and (max-width: 1279px) {
  main {
    width: 96%;
  }
}

@media screen and (max-width: 768px) {
  main {
    width: 100%;
  }
  #poster {
    width: 100%;
    height: 141.42vw;
  }
}

