h1 {
  font-family: 'Lovelace Regular';
  font-size: clamp(0px, 5.417vw, 104px);
  color: white;
  text-transform: uppercase;
}

h1.questions {
  font-family: 'TheanoDidot Regular';
  font-size: var(--h1-questions);
  color: white;
  text-transform: uppercase;

  height: 198px;

  background-image: url('../images/section02/section02PicGradient.png');
  background-size: contain;
  background-clip: padding-box;
  background-repeat: no-repeat;
  background-position: center;

  display: flex;
  justify-content: center;
  align-items: center;
  padding-right: 108px;
  padding-left: 108px;
  margin-top: 24px;
}

.margin-right {
  margin-right: 50px;
}

h2 {
  font-family: 'Cascadia Code PL Regular';
  font-size: var(--h2-font-size);
  color: white;
}

h2.footerNumbers {
  font-size: var(--h2-footer-font-size);
}

h3 {
  font-family: 'Cascadia Code PL Regular';
  font-size: var(--h3-font-size);
  color: white;
}

h4 {
  font-family: 'Cascadia Code PL Light';
  font-size: var(--h4-font-size);
  color: white;
}

.banner {
  width: 100%;
  height: 100vh;
  text-align: center;
  overflow: hidden;
  position: relative;

  display: flex;
  justify-content: center;
  align-items: center;
}

.banner .slider {
  position: absolute;
  width: 100%;
  max-width: 1920px;
  height: inherit;
  left: 50%;
  translate: -50% 0;
  transform-style: preserve-3d;
  transform: perspective(3500px);
}

.banner .slider .item {
  top: 50%;
  position: absolute;
  left: 50%;
  translate: -50% -30%;
  transition: 0.1s;
  display: flex;
  align-items: flex-end;
  filter: drop-shadow(30px 10px 40px rgba(0, 0, 0, 0.25));
  margin-left: 90px;
}

.banner .slider .item :hover {
  cursor: pointer;
}

.pic1 {
  width: 500px;
  transform: translateX(-700px) rotateY(var(--yRot)) rotateZ(var(--zRot))
    translateZ(calc(var(--position) * var(--gap3D) + var(--gap3D)))
    translateY(-70px);
}

.pic1:hover {
  transform: translateX(-600px) rotateY(var(--yRot)) rotateZ(var(--zRot))
    translateZ(calc(var(--position) * var(--gap3D) + var(--gap3D) + 50px))
    translateY(-70px);
}

.pic2 {
  width: 350px;
  transform: translateX(-550px) rotateY(var(--yRot)) rotateZ(var(--zRot))
    translateZ(calc(var(--position) * var(--gap3D) + var(--gap3D)))
    translateY(190px);
}

.pic2:hover {
  transform: translateX(-450px) rotateY(var(--yRot)) rotateZ(var(--zRot))
    translateZ(calc(var(--position) * var(--gap3D) + var(--gap3D) + 50px))
    translateY(190px);
}

.pic3 {
  width: 500px;
  transform: translateX(-500px) rotateY(var(--yRot)) rotateZ(var(--zRot))
    translateZ(calc(var(--position) * var(--gap3D) + var(--gap3D)))
    translateY(-180px);
}

.pic3:hover {
  transform: translateX(-400px) rotateY(var(--yRot)) rotateZ(var(--zRot))
    translateZ(calc(var(--position) * var(--gap3D) + var(--gap3D) + 50px))
    translateY(-180px);
}

.pic4 {
  width: 270px;
  transform: translateX(-300px) rotateY(var(--yRot)) rotateZ(var(--zRot))
    translateZ(calc(var(--position) * var(--gap3D) + var(--gap3D)))
    translateY(100px);
}

.pic4:hover {
  transform: translateX(-200px) rotateY(var(--yRot)) rotateZ(var(--zRot))
    translateZ(calc(var(--position) * var(--gap3D) + var(--gap3D) + 50px))
    translateY(100px);
}

.pic5 {
  width: 800px;
  transform: translateX(-400px) rotateY(var(--yRot)) rotateZ(var(--zRot))
    translateZ(calc(var(--position) * var(--gap3D) + var(--gap3D)))
    translateY(-180px);
}

.pic5:hover {
  transform: translateX(-300px) rotateY(var(--yRot)) rotateZ(var(--zRot))
    translateZ(calc(var(--position) * var(--gap3D) + var(--gap3D) + 50px))
    translateY(-180px);
}

.pic6 {
  width: 355px;
  transform: translateX(-70px) rotateY(var(--yRot)) rotateZ(var(--zRot))
    translateZ(calc(var(--position) * var(--gap3D) + var(--gap3D)))
    translateY(-50px);
}

.pic6:hover {
  transform: translateX(30px) rotateY(var(--yRot)) rotateZ(var(--zRot))
    translateZ(calc(var(--position) * var(--gap3D) + var(--gap3D) + 50px))
    translateY(-50px);
}

.pic7 {
  width: 500px;
  transform: translateX(0px) rotateY(var(--yRot)) rotateZ(var(--zRot))
    translateZ(calc(var(--position) * var(--gap3D) + var(--gap3D)))
    translateY(-300px);
}

.pic7:hover {
  transform: translateX(100px) rotateY(var(--yRot)) rotateZ(var(--zRot))
    translateZ(calc(var(--position) * var(--gap3D) + var(--gap3D) + 50px))
    translateY(-300px);
}

.banner .slider .item img {
  width: inherit;
}

.section02 {
  display: flex;
  flex-direction: column;
  width: calc(100% - 264px);
  max-width: 1720px;
  gap: 0px;
}

h1.paddingTop {
  padding-top: 48px;
}

.wrapperHor {
  width: 100%;
  display: flex;
  position: relative;
  align-items: center;
}

.wrapperHor:nth-child(2) {
  margin-top: 50px;
}

.wrapperVer {
  width: 100%;
  display: flex;
  flex-direction: column;
  position: relative;
}

.wrapperHor.fill {
  justify-content: space-between;
}

.wrapperHor.end {
  justify-content: flex-end;
}

.section02Pic01 {
  width: 6.875vw;
  aspect-ratio: 1;
  margin-right: 56px;
}

.section02PicPen {
  max-width: 662px;
  width: 34.479vw;
  height: 74px;
  margin-top: 16px;
  object-fit: contain;
}

.section02PicFriends {
  padding-top: 12px;
  width: 268px;
  object-fit: contain;
}

.section02PicGum {
  max-width: 274px;
  min-width: 250px;
  object-fit: contain;
  margin-left: 20px;
  margin-right: 20px;
}

.section02PicTea {
  max-width: 152px;
  min-width: 120px;
  width: 100%;
  object-fit: contain;
  z-index: 9999;

  cursor: pointer;
  transition: transform 0.2s ease;

  pointer-events: auto;
  z-index: 99999;
  position: relative;
}

.boil {
  animation: boilShake 2s ease forwards;
}

@keyframes boilShake {
  0% {
    transform: translate(0, 0) rotate(0deg);
  }
  10% {
    transform: translate(-2px, -1px) rotate(-1deg);
  }
  20% {
    transform: translate(2px, 2px) rotate(1deg);
  }
  30% {
    transform: translate(-2px, 1px) rotate(-1deg);
  }
  40% {
    transform: translate(2px, -2px) rotate(1deg);
  }
  50% {
    transform: translate(-1px, 2px) rotate(-1deg);
  }
  60% {
    transform: translate(1px, -2px) rotate(1deg);
  }
  70% {
    transform: translate(-1px, 1px) rotate(-0.5deg);
  }
  80% {
    transform: translate(1px, -1px) rotate(0.5deg);
  }
  90% {
    transform: translate(0px, 0px) rotate(0deg);
  }
  100% {
    transform: translate(0, 0) rotate(0deg);
  }
}

.section02PicPrint {
  width: 180px;
  object-fit: contain;
  margin-left: 134px;
}
.section02PicVideos {
  width: 268px;
  object-fit: contain;
}

.row {
  flex-direction: row;
  justify-content: space-between;
}

.bookWrap {
  position: relative;
  /* height: 998px; */
}

.book {
  /* right: 0; */
  /* position: absolute; */
  /* object-fit: cover; */
}

.bearWrap {
  position: relative;
  max-width: 924px;
  width: 48.125vw;
  /* min-width: 800px; */
  height: 43.958vw;
  max-height: 844px;
  background-image: url('../images/section03/bear.png');
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  margin-left: 50px;
}

.no {
  align-items: flex-start;
  height: fit-content;
}

.bearLight {
  aspect-ratio: 1;
  max-width: 134px;
  width: 6.979vw;
  position: absolute;
  right: clamp(0px, 19.208vw, 384px);
  top: clamp(0px, 21.667vw, 416px);
  cursor: pointer;
  transition: 0.1s;
}

.bearLight:hover {
  opacity: 0.8;
}

.marqueePic {
  aspect-ratio: 1;
  width: 114px;
  margin-bottom: 12px;
}

.marquee {
  width: 100%;
  overflow: hidden;
  margin-bottom: 10px;
  display: flex;
  flex-direction: column;
  gap: 40px;
}

.marquee:nth-child(4) {
  margin-top: 50px;
}

.marquee-track {
  display: inline-flex;
  gap: 40px;
  white-space: nowrap;
  will-change: transform;
  align-items: flex-end;
}

.marqueeContentLeft {
  display: inline-flex;
  gap: 26px;
  animation: scroll-left 75s linear infinite;
  align-items: flex-end;
}

.marqueeContentRight {
  display: inline-flex;
  gap: 26px;
  animation: scroll-right 75s linear infinite;
  align-items: flex-end;
}

.marquee__inner {
  display: flex;
  width: fit-content;
}

.marquee__content h1 {
  margin: 0;
  white-space: nowrap;
}

@keyframes scroll-left {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-100%);
  }
}

@keyframes scroll-right {
  0% {
    transform: translateX(-90%);
  }
  100% {
    transform: translateX(0%);
  }
}

.box {
  content: '';
  position: relative;
  overflow: hidden;
  width: 100%;
  max-width: 1278px;
  aspect-ratio: 213/148;

  background-image: url('../images/box.jpg');
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;

  margin-top: 50px;
}

.phone {
  width: 218px;
  height: 447px;
  background-image: url('../images/draggable/phone.png');
  background-repeat: no-repeat;
  transform: rotate(-20deg);

  position: absolute;
  top: 30%;
  right: 30%;
  background-size: contain;
  cursor: pointer;
  z-index: 9;
}

.bracelet {
  width: 215px;
  height: 390px;
  background-image: url('../images/draggable/bracelet.png');
  background-repeat: no-repeat;
  position: absolute;
  top: 274px;
  left: 444px;
  background-size: contain;
  cursor: pointer;
}

.strip {
  width: 125px;
  height: 454px;
  background-image: url('../images/draggable/strip.png');
  background-repeat: no-repeat;
  transform: rotate(10deg);

  position: absolute;
  top: 274px;
  right: 142px;
  background-size: contain;
  cursor: pointer;
}

.heart {
  width: 322px;
  height: 352px;
  background-image: url('../images/draggable/heart.png');
  background-repeat: no-repeat;
  position: absolute;
  top: 232px;
  right: 154px;
  background-size: contain;
  cursor: pointer;
}

.map {
  width: 240px;
  height: 311px;
  background-image: url('../images/draggable/map.png');
  background-repeat: no-repeat;
  transform: rotate(-20deg);

  position: absolute;
  bottom: 122px;
  left: 240px;
  background-size: contain;
  cursor: pointer;
}

.photo {
  width: 353px;
  height: 459px;
  background-image: url('../images/draggable/photo.png');
  background-repeat: no-repeat;

  position: absolute;
  top: 131px;
  left: 166px;
  background-size: contain;
  cursor: pointer;
}

.card {
  width: 168px;
  height: 252px;
  background-image: url('../images/draggable/card.png');
  background-repeat: no-repeat;
  transform: rotate(-28deg);

  position: absolute;
  top: 256px;
  right: 454px;
  background-size: contain;
  cursor: pointer;
}

.paper {
  width: 434px;
  height: 246px;
  background-image: url('../images/draggable/paper.png');
  background-repeat: no-repeat;
  transform: rotate(-20deg);

  position: absolute;
  top: 145px;
  right: 176px;
  background-size: contain;
  cursor: pointer;
}

.keys {
  width: 210px;
  height: 186px;
  background-image: url('../images/draggable/keys.png');
  background-repeat: no-repeat;
  position: absolute;
  bottom: 110px;
  left: 186px;
  background-size: contain;
  cursor: pointer;
}

.flower {
  width: 328px;
  height: 535px;
  background-image: url('../images/draggable/flower.png');
  background-repeat: no-repeat;
  position: absolute;
  top: 28%;
  left: 30%;
  background-size: contain;
  cursor: pointer;
  z-index: 8;
}

.modalBox {
  position: fixed;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  width: 1600px;
  height: 500px;
  background-color: black;

  display: none;
  justify-content: center;
  align-items: center;
  z-index: 999999;
}

.imgCaptionWrapper {
  display: flex;
  gap: 12px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: fit-content;
}

.wrapperVer.right {
  /* gap: 100px; */
}

.absoluteBlock {
  position: relative;
  width: 55.625vw;
  height: 44.32vw;
  margin-top: 2.6vw;
}

.absoluteBlockMiss {
  position: relative;
  max-width: 55.625vw;
  min-width: 0.52vw;
  height: 51.979vw;
  margin-top: 2.6vw;
}

.absoluteBlock2 {
  position: relative;
  width: 29.94vw;
  height: 45.73vw;
  margin-top: 2.6vw;
  top: 2.6vw;
}

.zanovoWrap {
  margin-top: 2.6vw;
  display: flex;
  max-width: 83.64vw;
  width: 100%;
  height: 29.58vw;
  flex-direction: column;
}

/* .zanovo {
  position: relative;
  width: 100%;
  height: 100%;
} */

.zanovo > * {
  position: absolute;
}

.absoluteBlock2 > * {
  position: absolute;
}

.absoluteBlock > * {
  position: absolute;
}

.pinkImgPic {
  object-fit: contain;
  width: 13.9vw;
}

.dino {
  object-fit: contain;
  width: 9.58vw;
  right: 1.25vw;
  top: 3.33vw;
  position: absolute;
  transition: transform 0.3s ease;
  cursor: pointer;
}

.roar {
  animation: roarAnimation 1.2s ease forwards;
}

@keyframes roarAnimation {
  0% {
    transform: scale(1) rotate(0deg);
  }
  10% {
    transform: scale(1.1) rotate(-5deg);
  }
  20% {
    transform: scale(1.15) rotate(5deg);
  }
  30% {
    transform: scale(1.2) rotate(-4deg);
  }
  40% {
    transform: scale(1.25) rotate(4deg);
  }
  50% {
    transform: scale(1.3) rotate(-3deg);
  }
  60% {
    transform: scale(1.35) rotate(3deg);
  }
  70% {
    transform: scale(1.3) rotate(0deg);
  }
  100% {
    transform: scale(1) rotate(0deg);
  }
}

.padik {
  object-fit: contain;
  width: 13.8vw;
  top: 12.39vw;
  right: 13.9vw;
}

.school {
  object-fit: contain;
  width: 6.87vw;
  left: 0;
  top: 21.45vw;
}

.winter {
  object-fit: contain;
  width: 6.87vw;
  left: 13.96vw;
  top: 21.406vw;
}

.train {
  object-fit: contain;
  width: 13.8vw;
  bottom: 8.02vw;
  right: 6.875vw;
}

.winterHouse {
  object-fit: contain;
  width: 13.9vw;
  left: 0;
  bottom: 0;
}

.taini {
  bottom: 1.04vw;
  right: 6.875vw;
}

.chuzhoi {
  bottom: 7.71vw;
  left: 0;
}

.zavesu {
  top: 15vw;
  left: 0;
}

.otkrit {
  top: 5.93vw;
  left: 15.208vw;
}

.fotik {
  position: absolute;

  max-width: 26.042vw;
  max-height: 37.604vw;

  width: 26.042vw;
  height: 37.604vw;

  background-image: url('../images/fotik.png');
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  right: 0;
  z-index: 49;
}

.zanovoWrapMobile {
  display: none;
}

.fotka {
  position: absolute;
  max-height: 23.438vw;
  max-width: 15.31vw;

  height: 23.438vw;
  width: clamp(0px, 14.844vw, 14.844vw);
  padding-bottom: clamp(0px, 10.417vw, 10.417vw);
  transition: padding-bottom 1s ease;
  /* right: clamp(0px, 5.417vw, 309px); */
  right: 0;
  translate: -38% 0;
}

.section02.row .wrapperVer:nth-child(1) {
  max-width: 55.625vw;
  min-width: 0;
  width: 100%;
}

.section02.row .wrapperVer:nth-child(2) {
  height: fit-content;
  width: 31.041vw !important;
  width: 100%;
  justify-content: flex-end;
  align-items: flex-end;
}

.wrapperVer.fotiki {
  top: 2.6vw;
  position: relative;
  justify-content: flex-end;
  height: 48.54vw;
}

.printFoto {
  background: transparent;
  border: none;
  cursor: pointer;
  position: absolute;

  max-width: 2.91vw;
  width: 2.917vw;
  aspect-ratio: 1;

  top: clamp(0px, 11.563vw, 11.563vw);
  left: clamp(0px, 1.719vw, 1.719vw);

  border-radius: 9999px;
  filter: blur(1px);
}

.printFoto:hover {
  background: rgba(0, 0, 0, 0.25);
}

.printFoto:active {
  background: rgba(0, 0, 0, 0.5);
}

.Footer {
  background-image: url('../images/footer.png');
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  position: relative;
  height: 38.3vw;
  width: 89.58vw;

  margin-top: 2.6vw;
}

.footerWrapVer {
  display: flex;
  flex-direction: column;
  gap: 1.979vw;
  position: absolute;
  top: 14.27vw;
  left: 5.93vw;
}

.footerWrapInside {
  display: flex;
  flex-direction: column;
  gap: 0.41vw;
}

.footerNumbers:nth-child(1) {
  left: 5.9vw;
  top: 2.71vw;
  position: absolute;
}

.footerNumbers:nth-child(2) {
  left: 34.89vw;
  top: 2.71vw;

  position: absolute;
}

.footerNumbers:nth-child(3) {
  left: 64.21vw;
  top: 2.71vw;

  position: absolute;
}

.Footer > h2 {
  color: black;
}

.footerWrapInside > h2 {
  color: black;
}

.missingImg01 {
  width: 45.417vw;
  height: 43.333vw;

  max-width: 45.31vw;
  max-height: 43.33vw;

  background-image: url('../images/missing/miss01.png');
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;

  position: absolute;

  left: clamp(0px, 2.813vw, 2.813vw);
  top: clamp(0px, 0.938vw, 0.938vw);

  z-index: 3;
}

.missingImg02 {
  width: 29.948vw;
  height: 51.927vw;

  max-width: 29.94vw;
  max-height: 51.97vw;

  background-image: url('../images/missing/miss02.png');
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;

  position: absolute;

  top: 0;
  right: 0;

  z-index: 2;
}

.missingImg03 {
  width: 34.375vw;
  height: 33.333vw;

  max-width: 34.37vw;
  max-height: 33.3vw;

  background-image: url('../images/missing/miss03.png');
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;

  position: absolute;

  left: 0;
  top: 8.54vw;

  z-index: 0;
}

.missingImg04 {
  width: 19.167vw;
  height: 11.875vw;

  background-image: url('../images/missing/miss04.png');
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;

  position: absolute;

  left: 7.6vw;
  top: 13.3vw;

  z-index: 1;
}

.risovalka {
  margin-top: 2.6vw;
  max-width: 67.08vw;
  width: 100%;
  display: flex;
  position: relative;
  background-image: url('../images/risovalka.png');
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;

  aspect-ratio: 1277/982;
}

#paintCanvas {
  width: 100%;
  height: 100%;
  display: block;
  cursor: crosshair;
}

.controls {
  position: absolute;
  top: 1.56vw;
  right: 3.43vw;
}

#colorPicker {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  width: 2.08vw;
  height: 2.08vw;
  border-radius: 50%;
  padding: 0;
  cursor: pointer;
  overflow: hidden;
}

#colorPicker::-webkit-color-swatch-wrapper {
  padding: 0;
}
#colorPicker::-webkit-color-swatch {
  border: none;
  border-radius: 50%;
}
#colorPicker::-moz-color-swatch {
  border: none;
  border-radius: 50%;
}

canvas {
  touch-action: none; /* отключаем жесты pinch-to-zoom, скролл и т.п. */
}

.zdes {
  top: 1.04vw;
  right: 0;
}

.zastilo {
  top: 15.46vw;
}

.vremya {
  left: 0;
  bottom: 9.79vw;
}

.boy {
  object-fit: contain;
  width: 6.87vw;
  left: 2.39vw;
  top: 1.56vw;
}

.ticket {
  object-fit: contain;
  width: 13.125vw;
  right: 0;
  top: 8.43vw;
}

.guys {
  object-fit: contain;
  width: 13.854vw;
  right: 0;
  bottom: 15.625vw;
}

.finger {
  object-fit: contain;
  width: 6.875vw;
  bottom: 1.19vw;
  left: 2.29vw;
}

.kitchen {
  object-fit: contain;
  width: 6.875vw;
  right: 0;
  bottom: 5.937vw;
}

.divan {
  width: 6.875vw;
  object-fit: contain;
}

.girl {
  width: 6.875vw;
  object-fit: contain;
}

.girlWrap {
  margin-top: 3.854vw;
}

.divani {
  gap: 7.18vw;
  justify-content: flex-start;
  align-items: flex-start;
}

.diski {
  width: 13.9vw;
  /* height: 1330x; */
}

.diskiWrap {
}

.wrapperHor.paperShipWrap {
  align-items: flex-end;
  margin-top: -2.6vw;
}

.paperShip {
  width: 27.604vw;
  margin-left: -2.6vw;
  margin-right: -3.125vw;
  object-fit: contain;
  translate: 0 1.04vw;
}

.cup {
  width: 13.958vw;
  object-fit: contain;
}

.crayon {
  width: 23.43vw;
  object-fit: contain;
}

.last {
  align-items: flex-end;
  margin-top: 1.04vw;
}

.bukashkaWrap {
  position: relative;
}

.bukashkaWrap > h1 {
  margin-left: 6.25vw;
}

.bukashka {
  position: absolute;
  width: 6.25vw;
  object-fit: contain;
  left: 0;
}

.missingControls {
  position: absolute;
  top: clamp(0px, 1.198vw, 1.198vw);
  left: clamp(0px, 1.198vw, 1.198vw);
  display: flex;
  gap: 0.52vw;
}

.missing {
  width: 0.72vw;
  aspect-ratio: 1;

  background-position: center;
  background-size: contain;
  border-radius: 9999px;
}

.missing.red {
  background-image: url('../images/missing/dotRed.svg');
  cursor: pointer;
}

.missing.red:hover {
  background-image: url('../images/missing/dotRedClose.svg');
  cursor: pointer;
}

.missing.yel {
  background-image: url('../images/missing/dotYel.svg');
}

.missing.green {
  background-image: url('../images/missing/dotGreen.svg');
}

.missing.gray {
  position: absolute;
  background-image: url('../images/missing/dotGray.svg');
  top: 0.625vw;
  left: 0.625vw;
  width: 0.625vw;
  cursor: pointer;
}

.missing.gray:hover {
  background-image: url('../images/missing/dotGrayClose.svg');
}

.missingImg02 .missing.red,
.missingImg02 .missing.yel,
.missingImg02 .missing.green {
  width: 0.98vw;
}
.missingImg02 .missingControls {
  top: 0.52vw;
  left: 0.52vw;
}

.missingImg03 .missing.red,
.missingImg03 .missing.yel,
.missingImg03 .missing.green {
  width: 0.625vw;
}
.missingImg03 .missingControls {
  top: 1.04vw;
  left: 0.93vw;
}

.missing-block {
  display: flex;
  opacity: 1;
  transition: opacity 0.5s ease;
}

.missing-block.hide {
  opacity: 0;
  pointer-events: none;
}

.my-pages {
}

#page01 {
  background-image: url('../images/book/01.png');
}

#page02 {
  background-image: url('../images/book/02.png');
}

.page-flip-container {
  position: absolute;
}

.modalBg {
  display: none;
  position: fixed;
  z-index: 50;
  background: rgba(0, 0, 0, 0.5);
  width: 100vw;
  height: 100vh;
  justify-content: center;
  align-items: center;
  overflow: hidden;
}

.firstScreenModal {
  width: 59.27vw;
  max-height: 37.76vw;
  height: 100%;
  border-radius: 1.04vw;
  box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
  backdrop-filter: blur(50px);
  background-image: url('../images/modalTexture.png');
  display: flex;
  padding: 2.34vw 3.125vw;
  gap: 2.08vw;
  justify-content: center;
  margin: 2.6vw;
  position: relative;
}

.modalTextWrap {
  height: 100%;
  justify-content: center;
  display: flex;
  flex-direction: column;
  gap: 1.875vw;
  max-width: 35.52vw;
  margin: 0 auto;
}

.modalPic {
  object-fit: contain;
  filter: drop-shadow(8px 8px 6.5px rgba(0, 0, 0, 0.25));
}

#modalPic01 {
  width: 23.54vw;
}

#modalPic02 {
  width: 25.46vw;
}

#modalPic03 {
  width: 25.46vw;
}

#modalPic04 {
  width: 21.4vw;
}

#modalPic05 {
  width: 25.75vw;
}

#modalPic06 {
  width: 21.35vw;
}

#modalPic07 {
  width: 25.46vw;
}

.modalClose {
  background-image: url('../images/modalClose.svg');
  background-position: center;
  background-size: contain;
  position: absolute;
  top: 2.34vw;
  right: 1.56vw;
  width: 1.87vw;
  aspect-ratio: 1;
  cursor: pointer;
}
.modalClose:hover {
  opacity: 0.5;
}

#modalPicPhone {
  width: 25vw;
}

#modalPicBracelet {
  width: 14.53vw;
}

#modalPicCard {
  width: 19.01vw;
}

.section02Mobile {
  display: none;
}

.section02Mobile2 {
  display: none;
}

#modalPicFlower {
  width: 29.68vw;
}

#modalPicHeart {
  width: 22.81vw;
}

#modalPicKeys {
  width: 20.41vw;
}

#modalPicMap {
  width: 28.3vw;
}

#modalPicPhoto {
  width: 28.125vw;
}

#modalPicStrip {
  width: 9.79vw;
}

#modalPicPaper {
  width: 27.91vw;
}

#modalPicFotka {
  width: 27.5vw;
}

.shake {
  animation: shakeAndFall 2s ease forwards;
}

@keyframes shakeAndFall {
  0% {
    transform: rotate(0deg) translateY(0);
  }
  10% {
    transform: rotate(-10deg);
  }
  20% {
    transform: rotate(10deg);
  }
  30% {
    transform: rotate(-8deg);
  }
  40% {
    transform: rotate(8deg);
  }
  50% {
    transform: rotate(-5deg);
  }
  60% {
    transform: rotate(5deg);
  }
  70% {
    transform: rotate(0deg);
  }
  80% {
    transform: rotate(0deg) translateY(50px);
  }
  100% {
    transform: rotate(90deg) translateY(150vh);
  }
}

.tooth {
  position: absolute;

  width: 5.52vw;
  object-fit: contain;
  bottom: 8.33vw;
  left: 24.479vw;

  cursor: pointer;
  transition: transform 0.3s ease;
}
