@font-face {
    font-family: 'CoFo Sans Pixel';
    src: url('fonts/CoFoSansPixel-Regular.eot');
    src: url('fonts/CoFoSansPixel-Regular.eot?#iefix') format('embedded-opentype'),
        url('fonts/CoFoSansPixel-Regular.woff2') format('woff2'),
        url('fonts/CoFoSansPixel-Regular.woff') format('woff'),
        url('fonts/CoFoSansPixel-Regular.ttf') format('truetype'),
        url('fonts/CoFoSansPixel-Regular.svg#CoFoSansPixel-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

* {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
}

body {
    background-color: #E8E8EE;
    color: #000;
    font-family: 'CoFo Sans Pixel';
}

.container{
    max-width: 1295px !important;
    margin: 0 auto;
}

.d-block{
    display: block;
}

.d-flex{
    display: flex;
}

.wrap{
    flex-wrap: wrap;
}

.nowrap{
    flex-wrap: nowrap;
}

.acsb{
    align-content: space-between;
}

.relative{
    position: relative;
}

.center{
    justify-content: center;
}

.end{
    justify-content: right;
}

.size12{
    font-size: 12px;
}

.size20{
    font-size: 20px;
}

.size27{
    font-size: 27px;
}

.size30{
    font-size: 30px;
}

.size35{
    font-size: 35px;
}

.size37{
    font-size: 37px;
}

.size40{
    font-size: 40px;
}

.size45{
    font-size: 45px;
}

.size48{
    font-size: 48px;
}

.size55{
    font-size: 55px;
}

.size64{
    font-size: 64px;
}

.size80{
    font-size: 80px;
}

.size96{
    font-size: 96px;
}

.size98{
    font-size: 98px;
}

.size128{
    font-size: 128px;
}

.size142{
    font-size: 142px;
}

.size195{
    font-size: 195px;
}

.size237{
    font-size: 237px;
}

.t-center{
    text-align: center;
}

.t-right{
    text-align: end;
}

.border-b{
    border-bottom: 4px solid #000;
}

.border-t{
    border-top: 6px solid #000;
}

.border{
    border: 6px solid #000;
}

.margin-t{
    margin-top: -27px;
}

.margin-t50{
    margin-top: 50px;
}

.margin-t-300{
    margin-top: -300px;
}

.margin-t-150{
    margin-top: -180px;
}

.margin-tb-3{
    margin: -3px 0;
}

.padding-b40{
    padding-bottom: 40px;
}

.header-background{
    background-image: url(images/header.png);
    height: 935px;
    background-repeat: repeat-x;
    background-position: center;
}

.header{
    margin-top: -20px;
}

.head-space{
    gap: 50px;
}

.header p {
    animation-name: header-anim;
    animation-duration: 4s;
    animation-iteration-count: infinite;
}

.header p.back {
    animation-name: header-anim-back;
    animation-duration: 4s;
    animation-iteration-count: infinite;
}

@keyframes header-anim-back {
  from {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-30px);
  }
  to {
    transform: translateY(0);
  }
}

@keyframes header-anim {
  from {
    transform: translateY(0);
  }
  50% {
    transform: translateY(30px);
  }
  to {
    transform: translateY(0);
  }
}


.block{
    margin-bottom: 100px;
}

.envelope{
    height: 380px;
    margin: 0 245px;
    background-color: #ffffff;
    position: relative;
    z-index: 2;
}

.envelope-t{
    width: 315px;
    left: 30px;
}

.from{
    top: 35px;
}

.from-rmr{
    width: 240px;
    left: 75px;
}

.envelope-b{
    width: 315px;
    left: 420px;
    top: 125px;
}

.for{
    top: 40px;
}

.for-cofo{
    width: 260px;
    left: 55px;
}

.stamp{
    width: 350px;
    left: 30px;
    top: -60px;
}

.index{
    width: 300px;
    justify-content: space-between;
    left: 80px;
    top: -40px;
}

.reveal{
    margin-bottom: 20px;
}

.reveal:hover{
    cursor: pointer;
}

.view-more {
    display: none;
    position: relative;
}

.view-more.opened {
    display: block;
}

.letter{
    display: flex;
    height: 320px;
    margin: 0 285px;
    background-color: #F7F7F7;
    flex-wrap: wrap;
    margin-bottom: 80px;
    margin-top: -390px;
    position: relative;
    z-index: 1;
}

.letter.opened {
    transition: all 1s;
    margin-top: -20px;
}

.letter-t{
    width: 650px;
    padding-top: 10px;
    margin-top: 28px;
}

.stamp-pic{
    background-image: url(images/stamp.png);
    height: 150px;
    width: 150px;
    background-repeat: no-repeat;
    background-size: contain;
    top: -50px;
    left: 260px;
}

.start{
    width: 800px;
}

.trans{
    background-color: #ffffff;
    height: 290px;
    margin-bottom: 100px;
    padding-top: 35px;
}

.researc-t{
    margin-bottom: 40px;
}

.researc{
    justify-content: space-between;
    gap: 50px;
    margin-bottom: 200px;
}

.res-pic{
    width: calc(100% / 3 - 50px);
}

.head-width{
    width: 1070px;
}

.atom{
    width: 575px;
    height: 575px;
    margin-top: 60px;
    background-image: url(images/atom-b.png);
    background-repeat: no-repeat;
    background-size: cover;
}

.nuc1{
    left: 280px;
    top: -370px;
}

.nuc2{
    left: 215px;
    top: -330px;
    color: #ffffff;
}

.nuc3{
    left: 320px;
    top: -340px;
    color: #ffffff;
}

.nuc4{
    left: 255px;
    top: -310px;
    color: #ffffff;
}

.nuc5{
    left: 185px;
    top: -280px;
}

.nuc6{
    left: 235px;
    top: -255px;
    color: #ffffff;
}

.nuc7{
    left: 280px;
    top: -280px;
}

.ir-r{
    margin-top: -750px;
    margin-bottom: 400px;
}

.irregular{
    background-image: url(images/irregular.png);
    background-repeat: no-repeat;
    background-size: cover;
    width: 355px;
    height: 355px;
    top: -50px;
    left: 120px;
    transition: transform 1s;
}

.regular{
    background-image: url(images/regular.png);
    background-repeat: no-repeat;
    background-size: cover;
    width: 240px;
    height: 240px;
    top: 360px;
    left: -30px;
    transition: transform 1s;
}

.irregular .relative{
    top: 150px;
}

.regular .relative{
    top: 110px;
    left: 62px;
}

.arrow{
    margin-top: -470px;
    width: 720px;
    left: 350px;
    margin-bottom: 280px;
}

.equations{
    width: 1295px;
}

.equation{
    height: 104px;
    margin-top: 100px;
}

.equation img{
    width: 90px;
    height: 104px;
}

.wid-eq-b{
    width: 30px;
}

.wid-eq{
    width: 15px;
}

.f img{
    width: 72px;
}

.equations .end{
    width: 1295px;
}

.table{
    justify-content: space-between;
    gap: 22px;
    margin-top: 60px;
}

.cell{
    background-color: #ffffff;
    border: 5px solid #000;
    height: 288px;
    width: calc(100% / 4 - 22px);
    padding: 20px;
    margin-top: 5px;
    transition: transform 1s;
}

/*.cell:hover{
    background-color: #D4D4E5;
}*/

.scale:hover{
    transform: scale(1.5);
    transition: transform 1s;
}

.scale-s:hover{
    transform: scale(1.2);
    transition: transform 0.3s;
}

.cells{
    align-content: space-between;
}

.b-cell{
    height: 551px;
    width: 864px;
    padding: 80px;
    justify-content: space-between;
    gap: 35px;
}

.s-cell{
    height: 254px;
    width: 360px;
    padding: 20px;
    justify-content: space-between;
}

.b-cell .atom-block{
    width: calc(100% / 2 - 35px);
}

.s-cell .atom-block{
    width: calc(100% / 2);
}

.b-atom{
    width: 321px;
    height: 321px;
}

.s-atom{
    width: 154px;
    height: 154px;
}

.atom-w{
    background-image: url(images/atom-w.png);
    background-repeat: no-repeat;
    background-size: cover;
}

.b-atom .relative{
    top: 85px;
}

.b-atom img{
    width: 73px;
}

.s-atom .relative{
    top: 20px;
}

.s-atom img{
    width: 40px;
}

.s-atom-h{
    height: 35px;
    margin-top: 5px;
}

.b-cell .t-atom{
    height: 80px;
}

.usb{  
    width: 411px;
    height: 411px;
    top: -250px;
    left: 600px;
}

.usb-pic{
    transform: rotate(63deg);
}

.usb-t{
    transform: rotate(10deg);
    top: -260px;
    left: 50px;
}

.dark-background{
    background-color: #D4D4E5;
}

.conclus-blocks{
    gap: 70px;
    align-items: center;
}

.conclusion{
    width: calc(100% / 3 - 70px);
}

.button{
    background-color: #ffffff;
    width: 215px;
    padding: 10px;
    margin-top: 15px;
    transition: transform 0.3s;
}

a{
    text-decoration: none;
    color: #000;
}

img{
    width: 100%;
}

.btn-up {
    position: fixed;
    background-color: #D4D4E5;
    right: 20px;
    bottom: 20px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 60px;
    height: 60px;
}