* {
  box-sizing: border-box;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

* ::-webkit-scrollbar {
  display: none;
}

html {
  height: 100vh;
  overflow: hidden;
  font-family: Arial, Helvetica, sans-serif;
}

body {
  margin: 0;
  height: 100%;
}

main {
  display: flex;
  height: 100%;
}

.left-panel {
  position: relative;
  width: 30%;
  background-color: rgba(128, 150, 172, 0.1);
  color: #333;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.left-panel > p {
  margin: 0;
  padding: 10px;
}

.name {
  font-size: 32px;
  font-weight: bold;
  color: rgb(39, 85, 131);
}

.right-scroll {
  width: 70%;
  color: #333;
  overflow: scroll;
}

.dark-blue {
  background-color: rgb(39, 85, 131);
}

.orange {
  background-color: orange;
}

.item-panel {
  margin: 0;
  padding: 0 0 30px 0;
  overflow: hidden;
}

.panel-caption {
  position: relative;
  height: 60px;
  margin: 30px 20px;
  border-radius: 20px;
  font-size: 22px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.panel-caption img {
  width: 24px;
  height: 24px;
}

.panel-caption > div {
  display: flex;
}

.caption-link {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  box-sizing: border-box;
  margin-left: 10px;
}

.caption-link span {
  font-size: small;
  margin-top: 4px;
  color: #fff;
}

.counter {
  position: absolute;
  width: 100px;
  height: 100px;
  top: 0;
  left: 0;
  font-size: medium;
  font-weight: 100;
  display: flex;
  justify-content: center;
  align-items: center;
}

.iphone-div-portrait {
  position: absolute;
  width: 100%;
  height: 100%;
  color: white;
  display: flex;
  justify-content: center;
  align-items: center;
}

.iphone-div-portrait > img {
  width: 70%;
}

.item-layer-portrait {
  position: absolute;
  width: 100%;
  height: 100%;
  color: white;
  display: flex;
  justify-content: center;
  align-items: center;
}

.item-layer-portrait > img {
  width: 25%;
}

.iphone-div {
  position: absolute;
  width: 100%;
  height: 100%;
  color: white;
  display: flex;
  justify-content: center;
  align-items: center;
}

.iphone-div > img {
  width: 100%;
}

.item-layer,
.item-layer-lg {
  color: white;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 30px;
}

.item-layer > img {
  width: 62%;
}

.item-layer-lg > img {
  width: 90%;
}

.lezanta {
  text-align: center;
  font-size: small;
  margin: 10px 20px;
}

.more {
  margin: 10px 40px 30px 40px;
  font-size: 24px;
}

.dark-blue > .panel-caption a,
.orange > .panel-caption a {
  text-decoration: none;
  display: flex;
  justify-content: center;
  align-items: center;
}

.dark-blue > .panel-caption a,
.dark-blue > .counter,
.dark-blue > .lezanta {
  color: white;
}

.dark-blue > .panel-caption > a:hover {
  color: #ddd;
}

.orange > .panel-caption a,
.orange > .counter,
.orange > .lezanta {
  color: black;
}

.orange > .panel-caption a:hover {
  color: #555;
}

a > span {
  font-size: small;
  margin-right: 10px;
}

.mail {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.5);
  position: absolute;
  left: 10px;
  top: 10px;
  overflow: hidden;
}

.mail > a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
}

.mail > a:hover {
  background-color: #eee;
}

.social {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 200px;
  height: 40px;
  position: absolute;
  bottom: 60px;
  left: calc(50% - 100px);
}

footer {
  background-color: black;
  color: white;
  height: 130px;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.social-footer {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 40px;
}

.social > a,
.social-footer > a {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  width: 40px;
  border-radius: 50%;
}

.social > a:hover,
.social-footer > a:hover {
  border: 1px solid #777;
}

.social > a > img,
.social-footer > a img {
  width: 20px;
}

@media only screen and (max-width: 768px) {
  main {
    flex-direction: column;
  }

  .left-panel > p {
    padding: 2px;
  }

  .left-panel {
    height: 200px;
    position: sticky;
    width: 100%;
    top: 0;
  }

  .right-scroll {
    width: 100%;
    height: calc(100vh - 200px);
  }

  .panel-caption {
    font-size: 18px;
  }

  .social {
    flex-direction: column;
    height: 200px;
    width: 40px;
    position: absolute;
    top: 0;
    left: calc(100% - 60px);
  }

  .social > a {
    width: 100%;
    height: 40px;
  }
}
