* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  font-family: "Poppins", sans-serif;
}

:root {
  --btn-color: #ee6c4d;
  --primary-color: #3d5a80;
  --secondary-color: #293241;
  --third-color: #2f3746;
  --primary-white: white;
  --review-card-background: #1a1e27;
}

/* body {
  overflow-x: hidden;
  width: 100%;
} */

/* hero section starts from here */

.hero {
  width: 100%;
  min-height: 60vh;
  background: var(--primary-color);
  color: var(--primary-white);
}

/* nav */
nav {
  width: 100%;
  min-height: 60px;
  box-shadow: 1px 1px rgba(0, 0, 0, 0.1);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 5%;
  flex-wrap: wrap;
  position: fixed;
  top: 0;
  left: 0;
  background: var(--primary-color);
  z-index: 999;
}

.nav-logo {
  font-size: 2rem;
}

/* nav menu */
.nav-menu-link ul {
  display: flex;
  align-items: center;
  justify-content: center;
  list-style: none;
}

.nav-menu-link li {
  margin-right: 80px;
  cursor: pointer;
}

.menu-btn {
  display: none;
}

@media screen and (max-width: 992px) {
  .nav-menu-link li {
    margin-right: 20px;
    font-size: 14px;
  }
}

@media screen and (max-width: 768px) {
  .menu-btn {
    display: block;
    font-size: 2rem;
    cursor: pointer;
  }
  .nav-menu-link {
    display: none;
    position: absolute;
    top: 10%;
    right: -100%;
    color: var(--btn-color);
    background: var(--review-card-background);
    border-radius: 6px;
    box-shadow: 1px 1px 5px rgba(170, 168, 168, 0.1),
      3px 3px 10px rgba(108, 107, 107, 0.1),
      1px 1px 5px rgba(170, 168, 168, 0.1),
      3px 3px 10px rgba(108, 107, 107, 0.1), 
      -1px -1px 5px rgba(170, 168, 168, 0.1),
      -3px -3px 10px rgba(108, 107, 107, 0.1),
      -4px -4px 5px rgba(170, 168, 168, 0.1),
      3px 3px 10px rgba(108, 107, 107, 0.1)
      
      
      ;
  }

  .nav-menu-link.active {
    display: block;
    right: 5%;
    top: 80%;
  }

  .nav-menu-link ul {
    flex-direction: column;
    gap: 1.5rem;
    align-items: center;
    justify-content: center;
    min-width: 250px;
    padding: 10%;
  }

  .nav-menu-link ul li {
    width: 100%;
    text-align: center;
  }
}

.nav-menu-link a {
  color: white;
  text-decoration: none;
}

.get-in-button button {
  padding: 8px 1.2rem;
  background: var(--btn-color);
  color: white;
  border-radius: 5px;
  border: none;
  font-size: 15px;
  cursor: pointer;
}

@media screen and (max-width: 992px) {
  .get-in-button button {
    padding: 5px 10px;
  }
}

@media screen and (max-width: 768px) {
  .get-in-button button {
    width: 120px;
    margin: 0 auto;
  }
}
/* hero title here */
.hero-section {
  width: 100%;
  display: grid;
  grid-template-columns: 1fr 1fr;
  margin-top: 100px;
}

@media screen and (max-width: 992px) {
  .hero-section {
    grid-template-columns: 1fr;
  }
}

.hero-title {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 15%;
  margin-left: 10%;
}
.hero-title h1 {
  font-size: 2rem;
}

.hero-title h1 span {
  color: var(--btn-color);
}

@media screen and (max-width: 992px) {
  .hero-title {
    padding: 10%;
    margin-left: 0;
  }
}

/* hero title ends here */

/* hero images starts here */
.hero-images-container {
  position: relative;
  height: 100%;
  width: 100%;
}

@media screen and (max-width: 992px) {
  .hero-images-container {
    display: none;
  }
}

.hero-images-circle {
  height: 260px;
  width: 260px;
  display: block;
  background: var(--secondary-color);
  opacity: 0.7;
  border-radius: 50%;
  position: absolute;
  top: 30%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.hero-image-1 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  overflow: hidden;

  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.hero-image-1 img {
  max-width: 50%;
}

/* hero images ends here */

/* hero section ends here */

/* about me section starts here */
.about-me {
  display: grid;
  grid-template-columns: 1fr 1fr;
  padding: 4rem;
  background: var(--secondary-color);
}

/* responsive */
@media screen and (max-width: 992px) {
  .about-me {
    grid-template-columns: 1fr;
    gap: 2rem;
    padding: 1rem;
  }
}

.about-me .about-me-image {
  padding: 15%;
  position: relative;
}

/* responsive */
@media screen and (max-width: 992px) {
  .about-me .about-me-image {
    margin-left: 0;
    min-height: 250px;
    padding: 15%;
    height: 100%;
    width: 100%;
  }
}

.about-me-image span {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
}
.about-me-image span img {
  height: 40px;
  width: 40px;
}

.about-me-image span:nth-child(1) {
  top: 10%;
  left: 25%;
  background: #08a7875b;
  height: 70px;
  width: 70px;
  border-radius: 50%;
}
.about-me-image span:nth-child(2) {
  top: 70%;
  left: 25%;
  background: #08a7875b;
  height: 70px;
  width: 70px;
  border-radius: 50%;
}
.about-me-image span:nth-child(3) {
  top: 10%;
  right: 25%;
  background: #08a7875b;
  height: 70px;
  width: 70px;
  border-radius: 50%;
}
.about-me-image span:nth-child(4) {
  top: 70%;
  right: 25%;
  background: #08a7875b;
  height: 70px;
  width: 70px;
  border-radius: 50%;
}
.about-me-image span:nth-child(5) {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #08a7875b;
  height: 70px;
  width: 70px;
  border-radius: 50%;
}

/* about me description */
.about-me-description h1 {
  width: 60%;
  padding: 5px 0;
  color: white;
  border-bottom: 2px solid var(--btn-color);
  font-weight: 500;
}


@media screen and (max-width: 992px) {
  .about-me-description {
    margin-top: 10%;
  }
}

.about-me-description p {
  font-weight: 400;
  font-size: 14px;
  color: white;
  max-width: 80%;
}

@media screen and (max-width: 992px) {
  .about-me-description h1 {
    text-align: center;
    width: 100%;
  }
  .about-me-description p {
    max-width: 100%;
    font-size: 13px;
  }
}

/* about me section ends here */

/* company i have work start here */
.company-detail {
  width: 100%;
  padding: 2.5rem;
  background: var(--third-color);
}

.company-detail > div {
  margin: 1rem;
}
.company-detail img {
  max-width: 100px;
}

.company-detail h1 {
  text-align: center;
  padding: 8px 0;
  color: white;
  font-weight: 400;
}
.company-detail hr {
  width: 10%;
  border-bottom: 2px solid var(--btn-color);
  margin: 0 auto;
}
.company-detail-image {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 3rem;
}

@media screen and (max-width: 992px) {
  .company-detail-image {
    gap: 1rem;
  }
  .company-detail img {
    max-width: 60px;
  }
}

/* company I have work ends here */

/* recent project starts here */
.recent-work {
  width: 100%;
  background: var(--secondary-color);
  padding: 4rem 2rem;
}

.recent-work-title {
  font-size: 2rem;
  color: white;
  max-width: 80%;
  margin: 0 auto;
}
.recent-work-title hr {
  width: 8%;
  border-bottom: 2px solid var(--btn-color);
}

/* recent work showcase */
.recent-work-showcase {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 2rem;
  padding: 2rem auto;
  max-width: 80%;
  margin: 2rem auto;
}

@media screen  and (max-width: 450px) {
  .recent-work-showcase {
    width: 100%;
    max-width: 100%;
  }
}

/* recent work card */
.recent-work-card {
  width: 100%;
  padding: 0;
  max-height: 500px;
}
.recent-work-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.recent-work-card h4 {
  font-size: 1.3rem;
  color: white;
  margin: 10px auto;
  font-weight: 400;
}
.see-more-box {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.see-more-btn {
  padding: 8px 12px;
  min-width: 120px;
  border: 1px solid var(--btn-color);
  outline: none;
  color: var(--btn-color);
  background: none;
  border-radius: 6px;
  cursor: pointer;
  transition: background 0.5s;
}

.see-more-btn:hover {
  background: var(--btn-color);
  color: white;
}

/* recent project ends here */

/* client rivew section starts here */
.client-review {
  width: 100%;
  min-height: 300px;
  background: var(--third-color);
  box-shadow: -2px -2px 10px rgba(0, 0, 0, 0.1);
  padding: 2rem;
  position: relative;
}
.client-review-title {
  width: 100%;
  text-align: center;
  padding: 10px;
}
.client-review-title h1 {
  font-size: 1.5rem;
  color: white;
  font-weight: 400;
}

.client-review-title hr {
  width: 10%;
  margin: 0 auto;
  border-bottom: 3px solid var(--btn-color);
  margin-top: 1rem;
}

/* client review cards----- */
.client-review-cards {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 2rem;
  max-width: 80%;
  margin: 0 auto;
  justify-items: center;
}

@media screen and (max-width: 768px){
  .client-review-cards {
    max-width: 95%;
    gap: 1rem;
  }
}
/* client review card */
.client-review-card {
  max-width: 500px;
  background: var(--review-card-background);
  padding: 1.2rem;
  margin-top: 1rem;
  border-radius: 8px;
  box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.1), 2px 2px 10px rgba(0, 0, 0, 0.1),
    1px 1px 4px rgba(0, 0, 0, 0.1), 2px 2px 10px rgba(0, 0, 0, 0.1),
    -1px -1px 4px rgba(0, 0, 0, 0.1), -2px -2px 10px rgba(0, 0, 0, 0.1),
    -1px -none 4px rgba(0, 0, 0, 0.1), -2px -2px 10px rgba(0, 0, 0, 0.1);
}

@media screen and (max-width: 768px){
  .client-review-card {
    font-size: 14px;
  }
}



.cleint-detail {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.cleint-detail img {
  max-width: 40px;
  border-radius: 50%;
}
.cleint-detail h4 {
  font-size: 1.2rem;
  color: white;
  font-weight: 400;
}
.cleint-detail p {
  font-size: 14px;
  color: white;
}

.client-review-desc {
  margin-top: 10px;
  color: white;
  font-size: 14px;
}



@media screen and (max-width: 768px){
  .client-review-desc {
    font-size: 13px;
  }
}
/* client review navigation */
.client-review-nav {
  width: 50%;
  margin: 2rem auto;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.5rem;
}
.client-review-nav span {
  height: 12px;
  width: 12px;
  background: whitesmoke;
  display: block;
  border-radius: 50%;
}

.client-review-nav span.active {
  background: var(--btn-color);
}

.slider-btn {
  font-size: 2rem;
  color: white;
  font-weight: 400;
  position: absolute;
  top: 50%;
  cursor: pointer;
}
.next-review {
  left: 5%;
}
.prev-review {
  right: 5%;
}
/* client review section ends here */

/* contact form here */
.contact-form {
  width: 100%;
  min-height: 500px;
  background: var(--primary-color);
  display: flex;
  align-items: center;
  justify-content: center;
}

.contact-form form {
  width: 75%;
  margin: 0 auto;
}

.contact-form form input,
textarea {
  width: 100%;
  padding: 6px 10px;
  background: var(--secondary-color);
  color: white;
  border: none;
  margin-top: 10px;
  outline: none;
  border-radius: 5px;
  resize: none;
}

.contact-form form textarea {
  min-height: 100px;
}
.form-row1 {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(48%, 1fr));
  gap: 2%;
}
.contact-form form input::placeholder {
  color: white;
}

.contact-form button {
  padding: 8px 12px;
  color: white;
  background: var(--btn-color);
  border-radius: 6px;
  cursor: pointer;
  outline: none;
  border: none;
  min-width: 100px;
}

/* contact form ends here */

/* footer starts from here */
footer {
  width: 100%;
  min-height: 100px;
  background: var(--secondary-color);
  display: flex;
  align-items: center;
  justify-content: space-evenly;
  color: white;
}

@media screen and (max-width: 992px) {
  footer {
    flex-wrap: wrap;
    font-size: 14px;
  }
}

footer h1 {
  font-size: 1.2rem;
}

footer ul {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.5rem;
  list-style-type: none;
}

footer ul li {
  cursor: pointer;
}

footer a {
  color: white;
}
/* footer ends here */
