@font-face {
  font-family: 'Exo 2';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/exo2/v10/7cH1v4okm5zmbvwkAx_sfcEuiD8j4PKcPg.ttf) format('truetype');
}
@font-face {
  font-family: 'Exo 2';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/exo2/v10/7cH1v4okm5zmbvwkAx_sfcEuiD8jvvKcPg.ttf) format('truetype');
}
@font-face {
  font-family: 'Exo 2';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/exo2/v10/7cH1v4okm5zmbvwkAx_sfcEuiD8jjPKcPg.ttf) format('truetype');
}
@font-face {
  font-family: 'Exo 2';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/exo2/v10/7cH1v4okm5zmbvwkAx_sfcEuiD8jWfWcPg.ttf) format('truetype');
}
* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  font-family: "Exo 2", sans-serif;
}
a {
  color: black;
  text-decoration: none;
}
h1 {
  font-size: 50px;
  font-weight: 700;
}
.container {
  max-width: 1517px;
  margin: 0 auto;
  padding: 75px;
}
.animated {
  opacity: 0;
}
.pulse {
  animation-iteration-count: infinite;
  opacity: 1;
}
.header {
  position: relative;
  /*max-width: 1290px;*/
  width: 100%;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 2fr 1fr;
}
.header .logo img {
  width: 200px;
}
.header #menu-toggle {
  display: none;
}
.header .burger {
  display: flex;
  align-items: center;
  position: fixed;
  top: 47px;
  right: 76px;
  width: 50px;
  height: 50px;
  cursor: pointer;
  z-index: 1;
  opacity: 0;
  transition: all 0.5s ease;
}
.header .burger > span,
.header .burger > span::before,
.header .burger > span::after {
  display: block;
  position: absolute;
  width: 100%;
  height: 6px;
  border-radius: 25px;
  background-color: #264653;
  transition: all 0.5s ease;
}
.header .burger > span::before {
  content: "";
  top: -16px;
}
.header .burger > span::after {
  content: "";
  top: 16px;
}
.header .menu {
  font-weight: 300;
  margin: 0 30px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 29px;
}
.header .menu div a {
  border-radius: 25px;
  padding: 8px 18px 11px 18px;
  transition: 0.6s all ease;
}
.header .menu div a:hover {
  color: white;
}
.header .menu .books a:hover {
  background-color: #feba21;
}
.header .menu .main a {
  background-color: #005877;
  font-weight: 500;
  color: white;
}
.header .menu .audio a:hover {
  background-color: #f4a261;
}
.header .menu .top a:hover {
  background-color: #e44a24;
}
.header .icons {
  margin-left: 233px;
  align-items: center;
  display: flex;
}
.header .icons img {
  width: 40px;
}
.header .icons .saved {
  margin-left: 30px;
}
.header .icons .saved a {
  position: relative;
  display: block;
  width: 40px;
  height: 40px;
}
.header .icons .saved a img {
  position: absolute;
  /*top: -6px;*/
  transition: all 0.4s ease;
}
.header .icons .saved a #heart-hover {
  opacity: 0;
}
.header .icons .saved a:hover #heart {
  opacity: 0;
}
.header .icons .saved a:hover #heart-hover {
  opacity: 1;
}
.start {
  background-color: #feba21;
  max-width: 1517px;
  margin: 0px auto;
}
.start .start-wrap {
  height: 870px;
  font-weight: 700;
  display: grid;
  grid-template-columns: 1fr 1fr;
}
.start .start-wrap .start-image img {
  height: 870px;
  /*width: 758px;*/
  width: 100%;
}
.start .start-wrap .library {
  padding: 75px;
}
.start .start-wrap .library .lead-text {
  letter-spacing: 3px;
  margin-bottom: 60px;
  font-size: 72px;
  color: #e44a24;
  text-align: center;
}
.start .start-wrap .library .lead-text #white-library {
  color: white;
  font-size: 80px;
}
.start .start-wrap .library .start-text {
  color: white;
  text-align: center;
  font-size: 30px;
  font-weight: 400;
  letter-spacing: 1px;
  line-height: 40px;
}
.start .start-wrap .library .btn {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 76px;
}
.start .start-wrap .library .btn a {
  background-color: #264653;
  border-radius: 100px;
  color: white;
  font-weight: 700;
  font-size: 23px;
  width: 310px;
  padding: 20px 48px 25px 48px;
  transition: all 1s ease;
  position: relative;
}
.start .start-wrap .library .btn a img {
  position: absolute;
  top: 24px;
  right: 35px;
  transition: opacity 1s ease;
}
.start .start-wrap .library .btn a #arrow-hover {
  opacity: 0;
}
.start .start-wrap .library .btn a:hover {
  color: #264653;
  background-color: white;
}
.start .start-wrap .library .btn a:hover #arrow {
  opacity: 0;
}
.start .start-wrap .library .btn a:hover #arrow-hover {
  opacity: 1;
}
.page {
  position: relative;
  top: 12px;
  color: #2a9d8f;
  font-size: 33px;
  font-weight: 700;
  float: right;
}
.chapter {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto 18px;
}
.chapter img {
  width: 217px;
}
.question {
  padding: 75px;
}
.question .problems {
  letter-spacing: 2px;
  font-weight: 500;
  font-size: 33px;
  text-align: center;
  padding-top: 12px;
}
.question .problems p {
  padding: 21px 0;
}
.question .problems .problems-main {
  font-weight: 700;
  font-size: 50px;
  padding-top: 90px;
}
.book-image {
  max-width: 1517px;
  text-align: center;
  margin: 0 auto;
}
.book-image img {
  width: 100%;
}
.blue-text {
  color: #00c9b0;
}
.yellow-text {
  color: #feba21;
}
.red-text {
  color: #e44a24;
}
.light-text {
  color: #89fff0;
}
.service {
  padding-bottom: 120px;
}
.service-container {
  padding-top: 145px;
  padding-bottom: 14px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
}
.service-container .service-item {
  text-align: center;
}
.service-container .service-item .icon {
  margin-bottom: 42px;
}
.service-container .service-item p {
  font-size: 30px;
  text-align: center;
  letter-spacing: 2px;
}
.genres {
  background-color: #2a9d8f;
  max-width: 1517px;
  margin: 0 auto;
  padding-bottom: 55px;
}
.genres .genres-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.genres .genres-header h1 {
  width: 670px;
  color: white;
}
.genres .genres-header img {
  height: 90px;
  margin-right: 157px;
}
.genres .genre-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 1fr);
  margin-bottom: 60px;
}
.genres .genre-grid .genre {
  width: 100%;
  height: 505.6px;
  text-align: center;
  color: white;
  display: flex;
  justify-content: center;
  align-items: center;
}
.genres .genre-grid #detective {
  background: url(../img/Детектив.png) no-repeat;
  background-size: cover;
}
.genres .genre-grid #kids {
  background: url(../img/Дитяча\ література.png) no-repeat;
  background-size: cover;
}
.genres .genre-grid #science {
  background: url(../img/Наукова\ література.png) no-repeat;
  background-size: cover;
}
.genres .genre-grid #document {
  background: url(../img/Документальна\ література.png) no-repeat;
  background-size: cover;
}
.genres .genre-grid #fantasy {
  background: url(../img/Фантастика\ та\ фентезі.png) no-repeat;
  background-size: cover;
}
.genres .genre-grid #adventure {
  background: url(../img/Пригоди.png) no-repeat;
  background-size: cover;
}
.genres .lines img {
  width: 100%;
}
.genres .page {
  top: -67px;
  right: 85px;
  color: white;
}
.registration {
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  font-weight: 700;
}
.registration p {
  letter-spacing: 2px;
  text-align: center;
  font-size: 40px;
  padding-bottom: 15px;
}
.registration .btn-rgstr {
  margin: 75px 0 24px;
}
.registration .btn-rgstr a {
  padding: 20px 58px 24px;
  width: 313px;
  font-size: 34px;
  background-color: #feba21;
  border-radius: 50px;
  color: white;
  transition: all 0.5s ease;
  border: 4px solid #feba21;
}
.registration .btn-rgstr a:hover {
  color: #feba21;
  background-color: white;
}
.footer .container {
  background: #264653;
  display: grid;
  grid-template-columns: 230px 285px 285px 523px;
  font-size: 22px;
  color: white;
}
.footer .container p,
.footer .container h3 {
  text-align: center;
}
.footer .container .foot-logo {
  margin-top: 52px;
}
.footer .container .foot-logo p {
  font-weight: 300;
  font-size: 24px;
}
.footer .container .info {
  padding-left: 50px;
  margin-top: 35px;
}
.footer .container .info p,
.footer .container .info a {
  color: white;
  font-weight: 400;
  line-height: 55px;
  letter-spacing: 2px;
}
.footer .container .contacts {
  padding-left: 20px;
}
.footer .container .contacts h3 {
  font-weight: 500;
  letter-spacing: 1px;
}
.footer .container .contacts p {
  letter-spacing: 2px;
  line-height: 35px;
}
.footer .container .contacts .phone h3 {
  padding-bottom: 13px;
}
.footer .container .contacts .social-net h3 {
  padding-top: 42px;
  padding-bottom: 25px;
}
.footer .container .contacts .social-net div {
  width: 281px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
