.container {
   width: 90%;
}

::-webkit-scrollbar {
   width: 5px; /* width of the entire scrollbar */
}

::-webkit-scrollbar-track {
   background: #2d384e; /* color of the track */
}

::-webkit-scrollbar-thumb {
   background-color: #eabe5c; /* color of the thumb */
   border-radius: 6px; /* roundness of the thumb corners */
}

html,
header,
footer,
body,
nav,
div,
img,
a,
ul,
li,
h1,
h2 {
   margin: 0;
   padding: 0;
   text-decoration: none;
   list-style-type: none;
}
* {
   box-sizing: border-box;
   max-width: 100%;
}
html {
   font-size: 14px;
}
body {
   font-family: "DM Sans", sans-serif;
   background-color: #eef0f2;
   width: 100%;
   max-width: 100vw;
   margin: 0 auto;
   color: #444;
   scrollbar-width: thin;
   overflow-x: hidden;
}

/* Default styles for desktop navigation */
.navigation {
   display: flex;
   justify-content: space-between;
   align-items: center;
   padding: 45px 0;
}
.imga {
   float: left;
   width: fit-content;
}
.img img {
   width: 229px;
   aspect-ratio: 5.45238095;
   margin-right: 20px;
   object-fit: cover;
}
.nav-list {
   float: right;
   width: fit-content;
   display: flex;
   align-items: center;
}
.nav-list li {
   width: fit-content;
   margin-right: 20px;
}
.nav-list li a {
   color: #141414;
   font-size: 18px;
   line-height: 23.44px;
   font-weight: 500;
   text-decoration: none;
}
.nav-list li a:hover {
   color: #0d21a1;
}
#button-default {
   display: none;
}
.buttons {
   display: flex;
   flex-direction: row;
   justify-content: space-between;
}
.sm-icons {
   display: flex;
   flex-direction: row;
   width: 120px;
   justify-content: space-around;
}
/* Mobile styles */
@media (max-width: 762px) {
   .navigation {
      flex-wrap: wrap;
      padding: 20px 0;
   }

   .nav-list {
      display: none;
      flex-wrap: wrap;
      width: 100%;
      margin-top: 10px;
   }
   .nav-list.show ul {
      display: flex;
      flex-wrap: wrap;
      height: 25px;
   }
   .nav-list li {
      height: 20px;
      margin-top: 10px;
      text-align: center;
      width: 100%;
   }
   .nav-list.show ul li a {
      text-align: center;
      width: 100%;
   }
   .nav-list.show {
      display: flex; /* Show the list when the 'show' class is present */
      flex-wrap: wrap;
   }
   #button-default {
      display: block; /* Show the button on mobile */
      background-color: transparent;
      border: none;
      top: 0;
      position: absolute;
      top: 20px;
      right: 20px;
      font-size: 24px;
      cursor: pointer;
      z-index: 999;
   }
   .sm-icons {
      margin: 15px auto;
   }
}

/* About */
#about {
   padding-top: 1%;
}
.about-text {
   display: flex;
   flex-direction: row;
   margin-bottom: 2%;
   align-items: center;
}
#project-detail-h2 {
   float: left;
   width: 55%;
   font-size: 50px;
   font-weight: 500;
   line-height: 78.12px;
   color: #141414;
   margin-right: 5%;
}
#project-description {
   float: right;
   width: 40%;
   font-size: 18px;
   font-weight: 500;
   line-height: 23.44px;
   color: rgba(20, 20, 20, 0.5);
}
.about .img {
   width: 100%;
   aspect-ratio: 2.7;
   display: flex;
}
.about .main-bg {
   width: 100%;
   height: 100%;
   margin: auto;
   object-fit: cover;
   object-position: top;
   mask-repeat: repeat;
}
.about .main-bg1 {
   display: none;
}
@media (max-width: 762px) {
   .about .img {
      height: 30vh;
   }
   .about .img .main-bg {
      display: none;
   }
   .about .img .main-bg1 {
      display: flex;
      width: 100%;
      border-radius: 10px;
      height: 100%;
   }
   .about .img .main-bg1 img {
      object-fit: cover;
      object-position: top;
   }
}
/* Advantages Section */
#advantages {
   padding-top: 6%;
}
.advantages {
   display: flex;
   flex-direction: row;
   justify-content: space-between;
   width: 100%;
}
.right {
   float: right;
   max-width: auto;
   /* width: 58%; */
}
#title {
   font-size: 24px;
   font-weight: 500;
   line-height: 31.25px;
   float: left;
   width: 250px;
   color: rgba(20, 20, 20, 0.5);
}
.content {
   opacity: 0;
   max-height: 0;
   overflow: hidden;
   transition: opacity 0.5s ease-in-out, max-height 0.3s ease-in-out;
}
.content.visible {
   opacity: 1;
   max-height: 1000px; /* Adjust this value based on your content height */
   transition: opacity 0.5s ease-in-out, max-height 2s ease-in-out;
}
.slider {
   display: flex;
   flex-direction: row;
   justify-content: right;
}
.slider-text {
   display: flex;
   flex-direction: column;
   width: 870px;
}
.slider-text span {
   margin-right: 7%;
}
.slider-text h2 {
   font-size: 60px;
   font-weight: 500;
   line-height: 78.12px;
   color: #141414;
   transition: 0.3s;
}
#small-paragraph {
   font-size: 18px;
   font-weight: 500;
   line-height: 23.44px;
   color: rgba(20, 20, 20, 0.5);
}
.slider-text h2:hover {
   cursor: pointer;
   font-size: 62px;
   transition: 0.3s;
   line-height: 85px;
}

/* Team */
#team {
   padding-top: 6%;
}
#project-title {
   color: #141414;
   font-size: 18px;
   font-weight: 500;
   line-height: 23.44px;
}
.team-text {
   align-items: center;
   margin-bottom: 4%;
   display: flex;
   flex-direction: row;
   align-items: flex-start;
}
.person {
   display: flex;
   flex-direction: row;
   margin-bottom: 50px;
   align-items: center;
}
.person a {
   font-size: 60px;
   font-weight: 500;
   line-height: 78.12px;
   color: #0d21a1;
   float: left;
   width: 70%;
   transition: font-size 0.3s ease-in;
}
.person a:hover {
   text-decoration: none;
   font-size: 65px;
}
.person p {
   float: right;
   width: 30%;
   text-align: right;
}

/* Projects */
#projects {
   padding-top: 6%;
}
.grid {
   display: flex;
   flex-wrap: wrap;
   justify-content: space-around;
}
.card {
   width: 43.2%;
   margin-bottom: 2%;
}
.card a {
   text-decoration: none;
}
.card img {
   width: 98%;
   transition: 0.3s;
   border: 0.3px solid rgba(20, 20, 20, 0.1);
   border-radius: 10px;
}
.card img:hover {
   transform: scale(1.02);
}
.card #project-description {
   float: left;
}

/* Contacts */
#contacts {
   padding-top: 6%;
}
.contacts {
   width: 100%;
   background-color: #0d21a1;
   padding: 15px 0 15px 0;
   text-align: center;
   border-radius: 10px;
   align-items: center;
}
.contacts img {
   width: 29.5px;
   aspect-ratio: 1;
   margin-left: 14px;
}
.contacts a:hover {
   font-size: 20px;
   transition: 0.3s;
}
.contacts img:hover {
   width: 45px;
   transition: 0.3s;
}
.contacts a {
   width: 100%;
   height: 100%;
   color: #fff;
   font-size: 18px;
   font-weight: 500;
   line-height: 23.44px;
   align-items: center;
   text-decoration: none;
}

/* Footer Section */
#footer {
   padding: 6% 0 3% 0;
}
.footer {
   display: flex;
   width: 100%;
   justify-content: space-between;
   align-items: center;
}
.footer img {
   float: left;
   width: auto;
}
.footer p {
   text-align: center;
   font-size: 18px;
   color: rgba(20, 20, 20, 0.5);
   line-height: 23.44px;
   font-weight: 400;
   text-transform: uppercase;
}
.footer .buttons {
   float: right;
   width: auto;
   display: flex;
   flex-direction: row;
   justify-content: space-between;
   width: 252px;
   align-items: center;
}
.footer .buttons #top {
   position: fixed;
   bottom: 20px;
   right: 20px;
   padding: 10px;
   transition: transform 0.5s;
}
.footer .buttons #top:hover {
   width: 80px;
   transform: scale(1.2);
   transition: transform 0.5s;
   bottom: 15px;
   right: 15px;
}

/* Details  */
.title {
   margin-top: 2%;
   display: flex;
   flex-direction: row;
   justify-content: space-between;
   width: 100%;
   height: auto;
   border: solid 1px rgba(20, 20, 20, 0.5);
   border-radius: 10px;
   align-items: center;
   padding: 18px 30px;
}
.title h2 {
   float: left;
   width: fit-content;
}
.title p {
   float: right;
   height: fit-content;
   max-width: fit-content;
   margin: 10px;
}
#project-detail img {
   width: 100%;
   height: auto;
   margin-top: 4%;
   border: 0.3px solid rgba(20, 20, 20, 0.1);
   border-radius: 15px;
   transition: 0.3s;
}
#project-detail img:hover {
   transform: scale(1.005);
   /* transform: scale(); */
}
.detail-text {
   margin: 3% 0 3%;
   display: flex;
   flex-direction: row;
   justify-content: space-between;
}
.detail-text #project-detail-h2 {
   float: left;
   max-width: fit-content;
}
.detail-text p {
   float: right;
   min-width: 75%;
}
.detail-link {
   font-size: 30px;
}

/* Responsive */
@media (max-width: 768px) {
   .container {
      width: 100%;
   }
   .about-text {
      flex-direction: column;
   }
   #project-detail-h2,
   #project-description {
      width: 100%;
   }
   #project-description {
      padding: 3% 0;
   }
   #project-detail-h2,
   .slider-text h2 {
      font-size: 40px;
      line-height: 48px;
      margin: 0;
   }
   .slider-text h2:hover {
      font-size: 40px;
      line-height: 48px;
   }
   .about .img {
      aspect-ratio: 3/4;
   }
   .about img {
      object-fit: cover;
   }
   .advantages {
      flex-direction: column;
   }
   #title {
      margin-bottom: 6%;
   }
   .team-text {
      flex-direction: column;
   }
   .person {
      margin-bottom: 5%;
   }
   .person a {
      font-size: 30px;
      max-width: 65%;
      line-height: 32px;
   }
   .person a:hover {
      font-size: 30px;
      max-width: 65%;
   }
   .projects {
      display: flex;
      flex-direction: column;
   }
   .projects #title {
      margin: 6% 0 6%;
      height: fit-content;
   }
   .grid {
      height: fit-content;
   }
   .card {
      width: 100%;
   }
   .contacts img {
      width: 20px;
   }
   .contacts img:hover {
      width: 30px;
   }
   .footer {
      flex-wrap: wrap;
      height: 200px;
   }
   .footer .imga {
      text-align: center;
      display: flex;
      width: 100%;
   }
   .footer .imga img {
      margin: 0 auto;
      width: 150px;
   }
   .footer p {
      width: 100%;
      text-align: center;
      padding: 0 20%;
   }
   .footer .buttons {
      width: 100%;
      padding: 0 15% 0 30%;
   }
   .title {
      margin: 0;
      padding: 0 15px;
   }
   #project-detail img {
      height: 40%;
   }
   .detail-text {
      flex-direction: column;
      text-align: center;
   }
   .detail-text #project-detail-h2 {
      max-width: 100%;
      width: 100%;
      text-align: center;
   }
   .detail-text p {
      width: 100%;
   }
}
