@import url('https://fonts.googleapis.com/css2?family=El+Messiri:wght@400..700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Anton&display=swap');

*{
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body{
  direction: ltr;
  font-family: 'El Messiri', sans-serif !important;
  font-size: clamp(12px, 4vw, 18px);
  margin: 0;
  padding: 0px;
  line-height:  1.4;
}

h1,
h2,
h3,
h4,
h5,
p{
  padding: 0;
  margin: 0;
}

p, li{
  padding: 6px 0;
  line-height:  1.4;
}

li{
  margin: 0 8px;
}

a{
  text-decoration: none;
  color: inherit;
  cursor: pointer;
}

img{
  display: block;
  max-width: 100%;
  max-height: 100%;
}

ul{
  margin: 0;
  padding: 0;
}

.section-container{
  width: auto;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
  position: relative;
}



.header-lay{
  position: fixed;
  z-index: 4;
  top: 0;
  left: 0;
  width: 100%;
  transition: opacity 0.2s ease;
}

.header-lay.hidden {
  opacity: 0;
}

.header{
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 15px 0;
}

.logo{
  background-color: #fff;
  box-shadow: rgba(100, 100, 111, 0.2) 0px 7 27px 0px;
  border-radius: 47px;
  padding: 15px;
  gap: 6px;
  flex-direction: row;
  display: flex;
  align-items: center;
}

.logoImg img{
  width: 33px;
}

.logoTitle h2{
  color: #212121;
  font-size: clamp(12px, 4vw, 18px);
  margin: 0;
}

.nav-header{
  background-color: #fff;
  box-shadow: rgba(100, 100, 111, 0.2) 0px 7 27px 0px;
  border-radius: 47px;
  padding: 21px;
  list-style: none;
  margin: 0;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 20px;
}

.nav-header li{
  padding: 0;
}

.nav-header li a {
  transition: 0.4s ease;
  font-size: clamp(12px, 4vw, 18px);
  color: #212121;
  text-decoration: none;
}

.nav-header li a:hover{
  opacity: 0.4;
}

.whatsapp-button{
  border: 2px solid transparent;
  border-radius: 47px;
  padding: 15px 20px;
  text-align: center;
  color: #fff !important;
  transition: 0.2s ease !important;
  background-color: #007050;
}

.whatsapp-button:hover{
  background-color: transparent;
  color: #007050 !important;
  border: 2px solid #007050;
}

.header-block{
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  min-height: 100vh;
}

.header-content{
  flex: 1;
}

.header-box{
  padding: 80px 0;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  justify-content: center;
  gap: 27px;
}

.header-box h2{
  color: #212121;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: clamp(18px, 4vw, 26px);
}

.main-button{
  border: 2px solid transparent;
  border-radius: 47px;
  word-break: break-all;
  font-size: clamp(16px, 4vw, 18px);
  cursor: pointer;
  background-color: #212121;
  transition: 0.2s ease;
  color: #fff;
  text-align: center;
  padding: 15px 20px;
}

.main-button:hover{
  text-decoration: none;
  border: 2px solid #212121;
  color: #212121;
  background-color: transparent;
}

.header-img{
  flex: 1;
}

.header-img img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.wrapper{
  background-color: #fefdf8;
}

.main-gallery{
  direction: initial;
  display: flex;
  flex-direction: row;
  padding: 78px 0;
}

.gallery-img{
  width: 100%;
  height: 348px;
}

.gallery-img img{
  box-shadow: rgba(0, 0, 0, 0.35) 0px 4px 20px;  
  border-radius: 15px;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.gallery-img:first-child{
  z-index: 1;
  transform: translate(40%, -50%);
}

.gallery-img:nth-child(2){
  z-index: 2;
}

.gallery-img:last-child{
  z-index: 1;
transform: translate(-40%, 50%);
}

.about-us-lay{
  background-color: #46B5D1;
}

.about-us{
  padding: 78px 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 27px;
}

.about-us h2{
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-size: clamp(21px, 4vw, 28px);
}

.about-us p{
  color: #fff;
  font-size: clamp(16px, 4vw, 21px);
}

.aboutus-button{
  border: 1px solid transparent;
  border-radius: 47px;
  word-break: break-all;
  font-size: clamp(16px, 4vw, 18px);
  cursor: pointer;
  background-color: #fff;
  transition: 0.2s ease;
  color: #212121;
  text-align: center;
  padding: 15px 20px;
}

.aboutus-button:hover{
  text-decoration: none;
  border: 2px solid #fff;
  color: #fff;
  background-color: transparent;
}

.circule-block{
  transform: translateY(50%);
  border-radius: 50%;
  width: 100%;
  height: 80px;
  background-color: #46B5D1;
  position: relative;
}

.wrapper-two{
  background-color: #46B5D1;
}

.our-partners-lay{
  position: relative;
  z-index: 1;
  background-color: #fff;
}

.our-partners{
  padding-top: 78px;
}

.our-partners h2{
  text-align: center;
  margin-bottom: 47px;
  color: #000;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: clamp(21px, 4vw, 28px);
}

.our-partners-box{
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 78px;
}

.our-partners-img{
  width: 100%;
  height: 104px;
}

.our-partners-img img{
  filter: drop-shadow(2px 4px 8px black);
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.circule-block-two{
  transform: translateY(-50%);
  border-radius: 50%;
  width: 100%;
  height: 80px;
  background-color: #fff;
  position: relative;
}

.article-cont {
  padding: 78px 0;
}

.article-cont-title {
  margin-bottom: 78px;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: clamp(21px, 4vw, 28px);
  color: #fff;
}

.article-block {
  overflow: hidden;
  position: relative;
}

.article-block-images {
  box-shadow: rgba(0, 0, 0, 0.35) 0px 4px 20px;  
  border-radius: 15px;
  float: left;
  width: 36%;
  margin: 47px;
  margin-top: 0;
  margin-left: 0;
}

.article-block-content {
  color: #fff;
  font-size: clamp(16px, 4vw, 18px);
}

.article-block-content ul {
  list-style: inside;
}

.pricing-text {
  padding-top: 47px;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 6px;
  justify-content: flex-start;
}

.pricing-text h5 {
  position: relative;
  color: #fff;
  font-size: clamp(21px, 4vw, 28px);
  font-weight: 700;
  padding: 15px;
}

.article{
  padding: 78px 0;
}

.article h2{
  margin-bottom: 78px;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: clamp(21px, 4vw, 28px);
  color: #000;
}

.article-box{
  direction: initial;
  display: flex;
  flex-direction: column;
  gap: 78px;
}

.article-card, .article-card-two{
  display: flex;
  flex-direction: row;
  width: 70%;
  border-radius: 28px;
  box-shadow: rgba(0, 0, 0, 0.35) 0px 4px 20px;
}

.article-card{
  align-self: flex-start;
  background-color: #f6f5f1;
}

.article-card-two{
  align-self: flex-end;
  background-color: #310b0b;
}

.article-img{
  width: 100%;
  flex: 1;
}

.article-img img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.article-card .article-img img{
  border-top-left-radius: 28px;
  border-bottom-left-radius: 28px;
}

.article-card-two .article-img img{
  border-top-right-radius: 28px;
  border-bottom-right-radius: 28px;
}

.article-content, .article-content-two{
  display: flex;
  flex-direction: column;
  flex: 1;
  align-items: start;
  gap: 15px;
  padding: 27px;
  justify-content: center;
}

.article-content .article-title h5{
  font-size: clamp(16px, 4vw, 21px);
  color: #000;
  transition: 0.2s ease;
}

.article-content .article-title h5:hover{
  opacity: 0.4;
}

.article-content-two .article-title h5{
  font-size: clamp(16px, 4vw, 21px);
  color: #fff;
  transition: 0.2s ease;
}

.article-content-two .article-title h5:hover{
  opacity: 0.4;
}

.article-content p{
  font-size: clamp(12px, 4vw, 18px);
  color: #000;
}

.article-content-two p{
  font-size: clamp(12px, 4vw, 18px);
  color: #fff;
}

.article-content .button-article{
  border: 2px solid transparent;
  border-radius: 47px;
  word-break: break-all;
  font-size: clamp(16px, 4vw, 18px);
  cursor: pointer;
  background-color: #212121;
  transition: 0.2s ease;
  color: #fff;
  text-align: center;
  padding: 15px 20px;
}

.article-content .button-article:hover{
  text-decoration: none;
  border: 2px solid #212121;
  color: #212121;
  background-color: transparent;
}

.article-content-two .button-article{
  border: 2px solid transparent;
  border-radius: 47px;
  word-break: break-all;
  font-size: clamp(16px, 4vw, 18px);
  cursor: pointer;
  background-color: #fff;
  transition: 0.2s ease;
  color: #212121;
  text-align: center;
  padding: 15px 20px;
}

.article-content-two .button-article:hover{
  text-decoration: none;
  border: 2px solid #fff;
  color: #fff;
  background-color: transparent;
}

.service-block{
  padding: 78px 0;
}

.service-block h2{
  margin-bottom: 78px;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: clamp(21px, 4vw, 28px);
  color: #000;
}

.service-box{
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 27px;
}

.service-card{
  background-color: #fff;
  border: 0.1px solid #00000033;
  display: flex;
  flex-direction: column;
}

.service-img{
  width: 100%;
  height: 231px;
}

.service-img img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.service-content{
  display: flex;
  flex-direction: column;
  align-items: start;
  gap: 15px;
  padding: 20px;
}

.service-desc{
  display: flex;
  flex-direction: column;
  align-items: start;
}

.service-desc p{
  padding: 0;
  font-size: clamp(12px, 4vw, 16px);
  color: #000;
}

.service-title h5{
  transition: 0.3s ease;
  font-size: clamp(16px, 4vw, 21px);
  color: #000;
}

.service-title h5:hover{
  opacity: 0.5;
}

.comments-lay{
  background-color: #46B5D1;
}

.comments{
  padding: 78px 0;
}

.comments h2{
  margin-bottom: 78px;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: clamp(21px, 4vw, 28px);
  color: #fff;
}

.comments-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}

.comments-box {
  position: relative;
  width: 100%;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

.comments-card {
  border-radius: 80px;
  background-color: #fff;
  padding: 27px;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 27px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 60%;
  box-sizing: border-box;
  opacity: 0;
  transition: opacity 1s;
}

.comments-card-img {
  width: 25%;
  min-width: 83px;
  height: auto;
}

.comments-card-img img {
  border-radius: 50%;
  width: 100%;
  height: auto;
  object-fit: cover;
}

.comments-card-text {
  display: flex;
  flex-direction: column;
  gap: 20px;
  flex: 1;
}

.comments-card-text p {
  font-size: clamp(16px, 4vw, 18px);
  color: #000;
  margin: 0;
}

.comments-card-text h5 {
  font-size: clamp(16px, 4vw, 21px);
  color: #000;
  margin: 0;
}

.comments-card.active {
  opacity: 1;
  height: 100%;
  position: relative;
  top: 0;
  left: 0;
  transform: unset;
}

.dots {
  text-align: center;
  margin-top: 21px;
}

.dot {
  border: 2px solid transparent;
  display: inline-block;
  width: 15px;
  height: 15px;
  margin: 4px;
  background-color: #fff; 
  border-radius: 50%;
  cursor: pointer;
  transition: background-color 0.6s ease;
}

.dot.active {
  background-color: #46B5D1; 
  border: 2px solid #fff;
}

.pricing-table{
  padding: 78px 0;
}

.pricing-table .row {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  gap: 15px;
  justify-content: center;
}

.pricing-table .col {
  width: 100%;
  box-sizing: border-box;
  flex-grow: 1;
}

.pricing-table .single-pricing {
  background: #fff;
  padding: 48px 21px;
  border-radius: 4px;
  position: relative;
  z-index: 2;
  border: 1px solid #eee;
  box-shadow: 0 15px 48px -15px rgba(0, 64, 128, 0.09);
  transition: 0.3s;
  text-align: center;
}

.pricing-table .single-pricing:hover {
  box-shadow: 0px 59px 59px rgba(0, 0, 0, 0.1);
  z-index: 2;
  transform: translate(0, -15px);
}
.pricing-table .price-label {
  color: #fff;
  background: #ffaa17;
  font-size: 16px;
  width: 104px;
  margin-bottom: 20px;
  display: block;
  -webkit-clip-path: polygon(
    100% 0%,
    90% 50%,
    100% 100%,
    0% 100%,
    0 50%,
    0% 0%
  );
  clip-path: polygon(100% 0%, 90% 50%, 100% 100%, 0% 100%, 0 50%, 0% 0%);
  margin-left: -21px;
  position: absolute;
  padding: 4px 0;
}
.pricing-table .price-head h2 {
  font-weight: 600;
  margin-bottom: 0px;
  text-transform: uppercase;
  font-size: 25px;
}
.pricing-table .price-head span {
  display: inline-block;
  background: #ffaa17;
  width: 6px;
  height: 6px;
  border-radius: 10px;
  margin-bottom: 21px;
  margin-top: 20px;
}
.pricing-table .price {
  font-weight: 600;
  font-size: 48px;
  margin-bottom: 0px;
  margin-top: 21px;
}

.pricing-table .single-pricing h5 {
  font-size: 12px;
  margin: 0px;
  text-transform: uppercase;
}
.pricing-table .single-pricing ul {
  list-style: none;
  margin-bottom: 21px;
  margin-top: 33px;
  padding: 0;
}

.pricing-table .single-pricing ul li {
  line-height: 33px;
}
.pricing-table .single-pricing a {
  background: none;
  border: 2px solid #212121;
  border-radius: 78px;
  color: #212121;
  display: inline-block;
  font-size: 16px;
  overflow: hidden;
  padding: 15px 48px;
  text-transform: uppercase;
  transition: all 0.2s ease 0s;
  text-decoration: none;
}

.pricing-table .single-pricing a:hover,
.pricing-table .single-pricing a:focus {
  background: #212121;
  color: #fff;
  border: 2px solid #212121;
}

.pricing-table .single-pricing-white a {
  background: none;
  border: 2px solid #fff;
  border-radius: 78px;
  color: #fff;
  display: inline-block;
  font-size: 16px;
  overflow: hidden;
  padding: 15px 48px;
  text-transform: capitalize;
  transition: all 0.2s ease 0s;
  text-decoration: none;
}

.pricing-table .single-pricing-white a:hover,
.pricing-table .single-pricing-white a:focus {
  background: #fff;
  color: #212121;
  border: 2px solid #fff;
}
.pricing-table .single-pricing-white {
  background: #212121b3;
}
.pricing-table .single-pricing-white ul li {
  color: #fff;
}
.pricing-table .single-pricing-white h2 {
  color: #fff;
}
.pricing-table .single-pricing-white h1 {
  color: #fff;
}
.pricing-table .single-pricing-white h5 {
  color: #fff;
}

@media only screen and (max-width: 480px) {
  .pricing-table .single-pricing {
    margin-bottom: 33px;
  }
}

@media (min-width: 600px) {
  .pricing-table .row{
    flex-direction: row;
  }

  .pricing-table .col {
    width: calc(100% - 13px);
  }
}
@media (min-width: 992px) {
  .pricing-table .col {
    width: calc(33.333% - 13px);
  }
}

.circule-block-three{
  transform: translateY(-50%);
  border-radius: 50%;
  width: 100%;
  height: 80px;
  background-color: #fefdf8;
  position: relative;
}

.osn-form-lay{
  background-color: #46B5D1;
}

.osn-form {
  padding: 78px 0;
  width: 60%;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
}

.title-container{
  text-align: center;
  margin-bottom: 47px;
}

.title-container h3{
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: clamp(21px, 4vw, 28px);
  color: #fff;
}

.input-container {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.input-container label{
  color: #ffffffb3;
}

.input-container .input-user--holder_section, .input-container .textarea-user--holder_section, .form button {
  outline: none;
  margin: 8px 0;
}

.input-container .input-user--holder_section {
  transition: 0.2s ease;
  border-radius: 6px;
  color: #212121b3;
  background-color: #ffffffb3;
  padding: 20px;
  border: 2px solid transparent;
  font-size: 16px;
  line-height: 1.4;
}

.input-container .textarea-user--holder_section {
  transition: 0.2s ease;
  border-radius: 6px;
  color: #212121b3;
  background-color: #ffffffb3;
  padding: 20px;
  border: 2px solid transparent;
  font-size: 16px;
  line-height: 1.4;
  resize: vertical;
  min-height: 47px;
  max-height: 150px;
}

.input-container .input-user--holder_section:focus, .input-container .textarea-user--holder_section:focus, .input-container .input-user--holder_section:hover, .input-container .textarea-user--holder_section:hover{
  border: 2px solid #310b0b;
  background-color: #ffffff;
}

.input-container .input-user--holder_section::placeholder, .input-container .textarea-user--holder_section::placeholder{
  color: #212121b3;
}

.check{
  transition: 0.2s ease;
  color: #fff;
}

.check:hover{
  opacity: 0.4;
  color: #fff;
}

.form-check {
  color: #fff;
  display: flex;
  align-items: center;
  gap: 15px;
  justify-content: flex-start;
  padding: 20px 0;
}

.form-check .form-check-input{
  margin: 0;
}

.submit-form {
  margin: 0 auto !important;
}

.ui-checkbox {
  --primary-color: #1677ff;
  --secondary-color: #fff;
  --primary-hover-color: #4096ff;
  --checkbox-diameter: 20px;
  --checkbox-border-radius: 5px;
  --checkbox-border-color: #d9d9d9;
  --checkbox-border-width: 1px;
  --checkbox-border-style: solid;
  --checkmark-size: 1.2;
}

.ui-checkbox,
.ui-checkbox *,
.ui-checkbox *::before,
.ui-checkbox *::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.ui-checkbox {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: var(--checkbox-diameter);
  height: var(--checkbox-diameter);
  border-radius: var(--checkbox-border-radius);
  background: var(--secondary-color);
  border: var(--checkbox-border-width) var(--checkbox-border-style) var(--checkbox-border-color);
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  cursor: pointer;
  position: relative;
}

.ui-checkbox::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  -webkit-box-shadow: 0 0 0 calc(var(--checkbox-diameter) / 2.5) var(--primary-color);
  box-shadow: 0 0 0 calc(var(--checkbox-diameter) / 2.5) var(--primary-color);
  border-radius: inherit;
  opacity: 0;
  -webkit-transition: all 0.5s cubic-bezier(0.12, 0.4, 0.29, 1.46);
  -o-transition: all 0.5s cubic-bezier(0.12, 0.4, 0.29, 1.46);
  transition: all 0.5s cubic-bezier(0.12, 0.4, 0.29, 1.46);
}

.ui-checkbox::before {
  top: 40%;
  left: 50%;
  content: "";
  position: absolute;
  width: 4px;
  height: 7px;
  border-right: 2px solid var(--secondary-color);
  border-bottom: 2px solid var(--secondary-color);
  -webkit-transform: translate(-50%, -50%) rotate(45deg) scale(0);
  -ms-transform: translate(-50%, -50%) rotate(45deg) scale(0);
  transform: translate(-50%, -50%) rotate(45deg) scale(0);
  opacity: 0;
  -webkit-transition: all 0.1s cubic-bezier(0.71, -0.46, 0.88, 0.6),opacity 0.1s;
  -o-transition: all 0.1s cubic-bezier(0.71, -0.46, 0.88, 0.6),opacity 0.1s;
  transition: all 0.1s cubic-bezier(0.71, -0.46, 0.88, 0.6),opacity 0.1s;
}

.ui-checkbox:hover {
  border-color: var(--primary-color);
}

.ui-checkbox:checked {
  background: var(--primary-color);
  border-color: transparent;
}

.ui-checkbox:checked::before {
  opacity: 1;
  -webkit-transform: translate(-50%, -50%) rotate(45deg) scale(var(--checkmark-size));
  -ms-transform: translate(-50%, -50%) rotate(45deg) scale(var(--checkmark-size));
  transform: translate(-50%, -50%) rotate(45deg) scale(var(--checkmark-size));
  -webkit-transition: all 0.2s cubic-bezier(0.12, 0.4, 0.29, 1.46) 0.1s;
  -o-transition: all 0.2s cubic-bezier(0.12, 0.4, 0.29, 1.46) 0.1s;
  transition: all 0.2s cubic-bezier(0.12, 0.4, 0.29, 1.46) 0.1s;
}

.ui-checkbox:active:not(:checked)::after {
  -webkit-transition: none;
  -o-transition: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  transition: none;
  opacity: 1;
}

.slogan-block{
  padding: 78px 0;
}

.slogan-block h2{
  box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 27px 0px;
  background-color: #fff;
  padding: 78px;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: clamp(21px, 4vw, 28px);
  color: #212121;
}

.slogan-gallery{
  display: flex;
  flex-direction: row;
}

.slogan-img{
  flex: 1;
  width: 100%;
  height: 348px;
}

.slogan-img img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.footer-lay{
  background-color: #46B5D1;
}

.footer{
  display: flex;
  flex-direction: column;
  gap: 27px;
  padding: 78px 0;
}

.footer-top{
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  gap: 27px;
  align-items: start;
}

.logo-footer-box{
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 15px;
}

.logo-footer-box h5{
  font-weight: 200;
  font-size: clamp(12px, 4vw, 16px);
  color: #fff;
}

.logo-footer{
  gap: 6px;
  flex-direction: row;
  display: flex;
  align-items: center;
}

.logoImg-footer img{
  width: 27px;
}

.logoTitle-footer h2{
  color: #fff;
  font-size: clamp(12px, 4vw, 18px);
  margin: 0;
}

.footer-menu{
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 15px;
  flex: 1;
}

.footer-menu a{
  font-size: clamp(12px, 4vw, 16px);
  color: #fff;
  transition: 0.2s ease;
}

.footer-menu a:hover{
  opacity: 0.4;
}

.footer-politic{
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 15px;
  flex: 1;
}

.footer-politic a{
  font-size: clamp(12px, 4vw, 16px);
  color: #fff;
  transition: 0.2s ease;
}

.footer-politic a:hover{
  opacity: 0.4;
}

.footer-bottom{
  border-top: 0.1px solid #fff;
  padding-top: 27px;
}

.footer-bottom p{
  padding: 0;
  text-align: center;
  font-size: clamp(16px, 4vw, 18px);
  color: #fff;
}

.about-us-block{
  padding: 78px 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 27px;
}

.about-us-block h2{
  color: #212121;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: clamp(21px, 4vw, 28px);
}

.about-us-block-p{
  color: #212121;
  font-size: clamp(16px, 4vw, 21px);
}

.article-cont-page {
  padding: 78px 0;
}

.article-cont-page-title {
  margin-bottom: 78px;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: clamp(21px, 4vw, 28px);
  color: #212121;
}

.article-block-page {
  overflow: hidden;
  position: relative;
}

.article-block-images-page {
  box-shadow: rgba(0, 0, 0, 0.35) 0px 4px 20px;  
  border-radius: 15px;
  float: left;
  width: 36%;
  margin: 47px;
  margin-top: 0;
  margin-left: 0;
}

.article-block-content-page{
  color: #212121;
  font-size: clamp(16px, 4vw, 18px);
}

.article-block-content-page ul {
  list-style: inside;
}

.contacts-box{
  padding: 78px 0;
  display: flex;
  gap: 47px;
  flex-direction: row-reverse;
}

.contacts-block{
  display: flex;
  flex: 1;
  align-items: start;
  flex-direction: column;
  gap: 20px;
}

.contacts-block-card{
  box-shadow: rgba(100, 100, 111, 0.2) 0px 7 27px 0px;
  border-radius: 27px;
  background: #fff;
  padding: 20px;
  justify-content: center;
  display: flex;
  align-items: center;
  flex-direction: row;
  gap: 15px;
}

.contacts-block-card svg{
  width: 15px;
  height: 15px;
  color: #212121;
}

.contacts-block-card a h5{
  word-break: break-all;
  transition: 0.2s ease;
  font-weight: 600;
  font-size: clamp(12px, 4vw, 18px);
  color: #212121;
}

.contacts-block-card a h5:hover{
  color: #212121;
  opacity: 0.5;
}

.contacts-block-card h5{
  font-weight: 600;
  font-size: clamp(12px, 4vw, 18px);
  color: #212121;
}

.kontact-form{
  display: flex;
  flex: 1;
  flex-direction: column;
  justify-content: space-between;
}

.kontact-form h2{
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: clamp(21px, 4vw, 28px);
  color: #212121;
  margin-bottom: 47px;
}

.input-kontact-form .inputs-kontact, .input-kontact-form .textarea-kontact{
  outline: none;
  margin: 8px 0;
}

.input-position{
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
}

.input-kontact-form .inputs-kontact {
  width: 100%;
  transition: 0.2s ease;
  border-radius: 6px;
  color: #ffffffb3;
  background-color: #212121b3;
  padding: 20px;
  border: 2px solid transparent;
  font-size: 16px;
  line-height: 1.4;
}

.input-kontact-form .textarea-kontact{
  width: 100%;
  transition: 0.2s ease;
  border-radius: 6px;
  color: #ffffffb3;
  background-color: #212121b3;
  padding: 20px;
  border: 2px solid transparent;
  font-size: 16px;
  line-height: 1.4;
  resize: vertical;
  min-height: 47px;
  max-height: 150px;
}

.input-kontact-form .inputs-kontact::placeholder, .input-kontact-form .textarea-kontact::placeholder{
  color: #ffffffb3;
}

.input-kontact-form .inputs-kontact:hover, .input-kontact-form .textarea-kontact:hover, .input-kontact-form .inputs-kontact:focus, .input-kontact-form .textarea-kontact:focus{
  border: 2px solid #310b0b;
  background-color: #212121;
}

.kontact-form button{
  margin: 0 auto;
}

.toggle-nav {
  border-radius: 50%;
  background-color: #46B5D1;
  padding: 21px;
  cursor: pointer;
  display: none;
  width: 27px;
  height: 27px;
  position: relative;
  z-index: 100;
  overflow: hidden;
}

.toggle-nav span {
  width: 21px;
  height: 2px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: #fff;
  transition: all 0.5s;
}

.toggle-nav span:nth-of-type(2) {
  top: calc(50% - 7px);
}

.toggle-nav span:nth-of-type(3) {
  top: calc(50% + 7px);
}

.toggle-nav.active span:nth-of-type(1) {
  display: none;
}

.toggle-nav.active span:nth-of-type(2) {
  top: 50%;
  transform: translate(-50%, 0%) rotate(45deg);  
}

.toggle-nav.active span:nth-of-type(3) {
  top: 50%;
  transform: translate(-50%, 0%) rotate(-45deg); 
}

.menu-nav {
  z-index: 99;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 20px;
  background: #fff;
  transform: translateY(-110%);
  transition: 0.4s ease; 
  opacity: 0;
}

.menu-nav.active {
  opacity: 1;
  transform: translateY(0);
}

.menu-nav nav {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100vh;
}

.menu-nav ul {
  display: flex;
  text-align: center;
  align-items: center;
  flex-direction: column;
  gap: 15px;
  padding: 0;
}

.menu-nav li {
  list-style-type: none;
}

.link-nav {
  text-align: center;
  font-size: clamp(16px, 4vw, 21px);
  color: #212121;
}

.link-nav:hover {
  opacity: 0.4;
}

.animation-element {
  opacity: 0;
  transition: opacity 2s ease-out;
}

.animation-element.visible {
  opacity: 1;
}

@media (max-width: 991px) {
  .nav-header{
    display: none;
  }

  .toggle-nav{
    display: block;
  }

  .header-block{
    min-height: auto;
    justify-content: normal;
    flex-direction: column-reverse;
  }

  .header-img{
    flex: unset;
    height: 50vh;
  }

  .header-content{
    flex: unset;
  }

  .header-box{
    padding: 47px 0;
    min-height: 50vh;
  }

  .gallery-img:first-child{
    transform: none;
  }

  .gallery-img:last-child{
    transform: none;
  }

  .main-gallery{
    gap: 27px;
  }

  .our-partners-box{
    grid-template-columns: repeat(3, 1fr);
  }

  .service-box{
    grid-template-columns: repeat(2, 1fr);
  }

  .comments-card{
    width: 100%;
  }

  .osn-form{
    width: 100%;
  }

  .footer-top{
    gap: 47px;
    flex-direction: column;
    align-items: center;
  }

  .contacts-box{
    flex-direction: column-reverse;
  }

  .article-card, .article-card-two{
    width: 100%;
  }
}

@media (max-width: 767px) {
  .main-gallery{
    flex-direction: column;
  }

  .article-block-images{
    width: 100%;
    margin: 0 0 47px;
  }

  .article-block-images-page{
    width: 100%;
    margin: 0 0 47px;
  }

  .service-box{
    grid-template-columns: repeat(1, 1fr);
  }

  .our-partners-box {
    gap: 27px;
    grid-template-columns: repeat(3, 1fr);
  }

  .comments-card{
    flex-direction: column;
    text-align: center;
  }

  .input-position{
    flex-direction: column;
    gap: 0;
  }

  .article-card{
    flex-direction: column;
  }

  .article-card-two{
    flex-direction: column-reverse;
  }

  .article-card .article-img img{
    border-top-right-radius: 28px;
    border-top-left-radius: 28px;
    border-bottom-left-radius: 0;
  }
  
  .article-card-two .article-img img{
    border-top-left-radius: 28px;
    border-top-right-radius: 28px;
    border-bottom-right-radius: 0;
  }

  .article-img{
    flex: unset;
    height: 231px;
  }
}

.page-privacy{
  word-break: break-all;
  color: #212121;
  overflow: hidden;
  text-align: justify;
  padding: 78px 0;
  width: 100%;
}


.page-privacy a{
  color: #212121;
}

.page-privacy a:hover{
  color: #212121;
  opacity: 0.4;
}

@media (max-width: 576px){
  .our-partners-box {
    grid-template-columns: repeat(2, 1fr);
  }

  .slogan-block h2{
    padding: 27px;
  }
}


@media screen and (min-width: 480px) {
  .section-container{
  max-width: 453px;
  }
}
@media screen and (min-width: 575px){
  .section-container{
    max-width: 543px;
  }
}
@media screen and (min-width: 768px) {
  .section-container{
  max-width: 733px;
  }
}
@media screen and (min-width: 992px) {
  .section-container{
    max-width: 963px;
  }
}

@media screen and (min-width: 1200px){
  .section-container{
    max-width: 1173px;
    }
}

@media (min-width: 1400px){
  .section-container{
    max-width: 1274px;
  }
}

