@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400&display=swap');

/* Общие стили */
body {
  font-family: 'Montserrat', serif;
  font-weight: 400;
  font-size: 14px;
  color: #434343;
  overflow-X: hidden;
}

.container {
  max-width: 1298px;
  padding: 0 20px;
  margin: 0 auto;
}

p {
  font-size: 16px;
  color: #6A859C;
  line-height: 1.8;
  user-select: none;
}

h3 {
  font-size: 30px;
  letter-spacing: 0.1em;
  user-select: none;
}

h4{
  font-size: 24px;
  letter-spacing: 0.1em;
  user-select: none;
}

.hide {
  display: none !important;
}

.title-wrapper {
  margin-bottom: 34px;
}

.title {
  margin-bottom: 17px;
  font-size: 22.4px;
  user-select: none;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #457D85;
}

.common-section {
  text-align: center;
  padding: 30px 0 0 0;
}

.common-section--dark {
  background-color: #192024;
}
.common-section--dark * {
  color: #fff;
}
.common-section--dark .subtitle {
  color: #E8E8E8;
}

.private-image, .card_icon, .divider, .divider-horizontal, .card_bg, .hiddenCard {
  pointer-events: none;
  -moz-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

a {
  user-select: none;
}

.hiddenCard {
  opacity: 0;
}

.footer__desc2-container {
  display: none;
}

.show{
  display: inherit;
}

/* ------------ MAIN ------------ */

.main {

}

/* ------------ ORDER (WHAT WE DO) ------------ */

.order {
}

.order .cards-wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.order .cards-wrapper2 {
  display: flex;
  flex-wrap: wrap;
  justify-content: start;
}

.order .card {
  position: relative;
  margin-bottom: 34px;
}

.order .card a{
  display: block;
}

.order .card_internal{
  position:relative;
  flex-grow: 1;
  width: 380px;
  height: 380px;
}

.order .card_internal .card_icon{
  position:absolute;
  top: 50%;
  left: 50%;
  margin: -150px 0 0 -150px;
  width: 300px;
  height: 300px;
}

.order .card_external{
  position: relative;
  margin-top: 15px;
  bottom: 0;
  width: 100%;
}

.order .card_external p{
  font-size: 22.4px;
  color: #457D85;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}
/* ------------ ABOUT (WHAT WE DO) ------------ */

.about {
  padding: 0;
}

.about .title-wrapper{
  background-color: #457D85;
  margin: 0;
}

.about .title-wrapper .title{
  font-size: 15px;
  padding: 10px;
  color: white;
}

.about .cards-wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 16px;
}

.about .card {
  position: relative;
}

.about .card a{
  display: block;
}

.about .card_internal{
  position:relative;
  flex-grow: 1;
  width: 234px;
  height: 71px;
  background-color: #B3B3B3;
  align-content: center;
}

.about .card_internal p{
  font-size: 15px;
  color: #FFFFFF;
  letter-spacing: 0.13em;
  text-transform: uppercase;
  line-height: 1.1em;
}

/* ------------reviews (WHAT WE DO) ------------ */

.reviews {
  padding: 30px 0;
}

.reviews .title-wrapper{
  background-color: #457D85;
  margin: 0;
}

.reviews .title-wrapper .title{
  font-size: 15px;
  padding: 10px;
  color: white;
}

/* ------------info (WHAT WE DO) ------------ */

.info {
  padding: 30px 0;
}

.info .title-wrapper{
  background-color: #457D85;
  margin: 0;
}

.info .title-wrapper .title{
  font-size: 16px;
  padding: 10px;
  color: white;
}

.info .info-content{
  text-align: left;
}

.info .info-content h2{
  font-weight: bold;
  font-size: 16px;
  color: black;
}

.info .info-content h3{
  font-weight: bold;
  font-size: 16px;
  color: black;
}

.info .info-content p{
  font-size: 16px;
  color: black;
  line-height: 1.2em;
}

.info .info-content ul {
  list-style: none;
}

.info .info-content ul li:before {
  content:  "-";
  position: relative;
  /*left:     -5px;*/
}

.info .info-content li{
  font-size: 16px;
  color: black;
}

.info .info-content-block{
  margin-top: 12px;
}

@media (max-width: 1240px) {

  .hiddenCard {
    display: none;
  }
}

@media (max-width: 1065px) {
  
  .services .cards-wrapper {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: space-around;
  }

  .services .divider{
    display: none;
  }

  .services .divider-horizontal {
    display: initial;
  }
}


@media (max-width: 960px) {
  .about .cards-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
  }
}

@media (max-width: 600px) {
  
  .services .cards-wrapper {
    flex-direction: column;
    align-items: center;
  }
}


@media (max-width: 540px) {

  .services .cards-wrapper .card {
    width: 75%;
  }
}


@media (max-width: 400px) {
  .title {
    font-size: 24px;
  }

  .subtitle {
    font-size: 16px;
  }

  h4 {
    font-size: 20px;
    margin-bottom: 16px;
  }

  p {
    font-size: 14px;
  }
  
}