@font-face {
  font-family: "Montserrat";
  src: url(../fonts/Montserrat-Black.ttf);
  src: url(../fonts/Montserrat-Black.woff);
  src: url(../fonts/Montserrat-Black.woff2);
  font-weight: 800;
}
@font-face {
  font-family: "Montserrat";
  src: url(../fonts/Montserrat-Regular.ttf);
  src: url(../fonts/Montserrat-Regular.woff);
  src: url(../fonts/Montserrat-Regular.woff2);
  font-weight: 600;
}
@font-face {
  font-family: "Montserrat";
  src: url(../fonts/Montserrat-Thin.ttf);
  src: url(../fonts/Montserrat-Thin.woff);
  src: url(../fonts/Montserrat-Thin.woff2);
  font-weight: 200;
}
@font-face {
  font-family: "Poppins";
  src: url(../fonts/Poppins-Regular.ttf);
  src: url(../fonts/Poppins-Regular.woff);
  src: url(../fonts/Poppins-Regular.woff2);
}

/* Variables */
:root {
  --main-font: "Montserrat", sans-serif;
  --second-font: "Poppins", sans-serif;
}
/* Globalization */
body {
  font-family: var(--second-font);
}
.section-padding {
  padding-block: 6.25rem;
}
.pb-70 {
  padding-bottom: 4.375rem;
}

.mb-30 {
  margin-bottom: 1.875rem;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  font-family: var(--main-font);
}

/* navbar */

.navbar {
  padding: 1.25rem 0 1.875rem;
  z-index: 123123412341234;
}


nav .navbar-brand {
  font-size: 1.125rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .125rem;
  color: black;
  font-family: var(--main-font);
}

nav .my-bar span {
  display: block;
  width: 1.375rem;
  height: 0.125rem;
  border-radius: 0.0625rem;
  background: black;
  margin-top: 0.25rem;
}

.trns {
  transition: 0.4s all;
}

nav .nav-item {
  margin: 1.5625rem 0.9375rem 0;
  font-size: 0.8125rem;
}



nav .nav-link {
  padding: 0;
  color: #111;
  display: inline-block;
}
nav a.active{
  position: relative;
}
nav a.active::after {
  content: "";
  width: 100%;
  height: 2px;
  background: #fff;
  position: absolute;
  bottom: 0;
  left: 0;
  background: #222;
  animation: underline-animation 0.4s all;
}

@media screen and (min-width: 1024px) {
  .navbar {
    padding: 0;
  }
  
nav .navbar-brand {
 
  
}
nav .my-nav-anchors {
  background-color: transparent !important;
  margin-top: 0 !important;
  border: 0 !important;
}

nav .my-nav-anchors li {
  margin-block: 1.25rem;
}

nav .my-nav-anchors a {
  color: black;
}

nav .my-nav-anchors a:hover {
  color: black;
}

nav .nav-link {
  padding: 0 !important;
}

nav a.active {
  --bs-navbar-active-color: black;
}
nav a.active::after {
  content: "";
  width: 100%;
  height: 2px;
  background: black;
  position: absolute;
  bottom: 0;
  left: 0;
  animation: underline-animation 0.4s all;
}
}


/* Hero section */

#hero {
  background: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)),
    url(../imgs/bg.jpg);
  background-size: cover;
}

header h2 {
  font-weight: 800;
  font-size: 3.125rem;
  margin-bottom: 0.625rem;
}

header h1 {
  font-weight: 200;
}

header h1 span {
  font-weight: 600;
  overflow: hidden;
  display: inline-block;
  white-space: nowrap;
  vertical-align: bottom;
}

header h1 span::before {
  content: "";
  display: inline-block;
  border-right: 1px solid;
  width: 0%;
  animation: text-animation 5s infinite ease-in-out;
}

@keyframes text-animation {
  0% {
    content: "Larry Daniels";
    width: 26.535rem;
  }

  20% {
    width: 0;
  }

  40% {
    content: "Developer";
    width: 21.0831rem;
  }
  60% {
    width: 0;
  }
  80% {
    content: "Designer";
    width: 18.7756rem;
  }
  100% {
    width: 0;
  }
}

@media screen and (max-width: 576px) {
  @keyframes text-animation {
    0% {
      width: 0;
    }

    20% {
      content: "Developer";
      width: 12rem;
    }

    40% {
      width: 0;
    }
    60% {
      content: "Larry Daniels";
      width: 15.5rem;
    }
    80% {
      width: 0;
    }
    100% {
      content: "Designer";
      width: 11rem;
    }
  }
}
@media screen and (min-width: 576px) {
  @keyframes text-animation {
    0% {
      width: 0;
    }

    20% {
      content: "Larry Daniels";
      width: 19.7rem;
    }

    40% {
      width: 0;
    }
    60% {
      content: "Developer";
      width: 15.5rem;
    }
    80% {
      width: 0;
    }
    100% {
      content: "Designer";
      width: 13.2rem;
    }
  }
}
@media screen and (min-width: 768px) {
  @keyframes text-animation {
    0% {
      width: 0;
    }

    20% {
      content: "Larry Daniels";
      width: 21.2rem;
    }

    40% {
      width: 0;
    }
    60% {
      content: "Developer";
      width: 17rem;
    }
    80% {
      width: 0;
    }
    100% {
      content: "Designer";
      width: 15rem;
    }
  }
}
@media screen and (min-width: 992px) {
  @keyframes text-animation {
    0% {
      width: 0;
    }

    20% {
      content: "Larry Daniels";
      width: 26rem;
    }

    40% {
      width: 0;
    }
    60% {
      content: "Developer";
      width: 21rem;
    }
    80% {
      width: 0;
    }
    100% {
      content: "Designer";
      width: 18.2rem;
    }
  }
}
/* About section */
#about figure {
  padding-left: 1.875rem;
  margin-bottom: 5rem;
  position: relative;
}

#about figure::before {
  content: "";
  position: absolute;
  width: 80%;
  height: 80%;
  left: 0;
  bottom: -1.875rem;
  background-image: url(../imgs/dots.png);
  z-index: -1;
}

#about .about-inner h3 {
  font-weight: 800;
  font-size: 1.875rem;
  margin-bottom: 0.3125rem;
}

.subtitle {
  color: #999;
  text-transform: uppercase;
  letter-spacing: 0.125rem;
  margin-bottom: 1.25rem;
}

#about .about-inner p {
  line-height: 1.6;
  margin: 0;
  font-size: 0.9375rem;
  color: #748182;
}
#about .about-inner .skills {
  margin-top: 1.875rem;
}
#about .about-inner .skills .progress {
  border-radius: 0.3125rem;
  box-shadow: 0px 0.125rem 0.4375rem rgba(0, 0, 0, 0.15) inset;
  height: auto;
  margin-bottom: 1.875rem;
}
#about .about-inner .skills .progress-bar {
  padding: 0.3125rem 0.625rem;
}
#about .about-inner .skills h6,
#about .about-inner .skills span {
  font-size: 0.8125rem;
  color: #fff;
  font-weight: 600;
}
#about .about-inner .skills span {
  font-weight: 200;
}

#about .about-btns button {
  padding: 0.625rem 1.875rem;
  border-radius: 0.3125rem;
  font-size: 0.8125rem;
  transition: all 0.5s;
}

#about .about-btns .mybtn {
  --bs-btn-hover-color: black;
  --bs-btn-hover-bg: #fff;
  --bs-btn-hover-border-color: black;
}

/* services */
.section-heading {
  margin-bottom: 5rem;
}
.section-heading h3 {
  font-weight: 800;
  font-size: 2.5rem;
  position: relative;
  display: inline-block;
  z-index: 4;
}

.section-heading h3::after {
  content: "";
  width: 100%;
  height: 1.875rem;
  background-image: url(../imgs/dots.png);
  background-repeat: repeat;
  position: absolute;
  bottom: -0.625rem;
  left: 0;
  z-index: -1;
}

#services .card {
  padding: 3.125rem 1.25rem;
  margin-bottom: 1.875rem;
}

#services .card span {
  font-size: 1.875rem;
  margin-bottom: 1.25rem;
  width: 4.375rem;
  height: 4.375rem;
  line-height: 4.375rem;
  background: #f4f4f4;
  border-radius: 50%;
  transition: all 0.5s;
}

#services .card h6 {
  margin-bottom: 0.9375rem;
  font-weight: 800;
  font-size: 1.125rem;
}

#services .card p {
  word-spacing: 0.125rem;
  font-size: 0.875rem;
  line-height: 1.6;
  color: #748182;
}

#services .card:hover span {
  background: black;
  color: white;
}

/* portfolio */

#portfolio .nav-link {
  margin: 0 15px;
  color: #222;
  font-weight: 700;
  font-size: 1rem;
  cursor: pointer;
  position: relative;
  z-index: 2;
  background-color: transparent;
  padding: 0;
  transition: all 0.4s;
}

#portfolio ul .active::after {
  content: "";
  height: 0.125rem;
  width: 100%;
  background: #111;
  position: absolute;
  left: 0;
  bottom: -0.3125rem;
  transition: all 0.4s;
  z-index: -1;
}

#portfolio .layer-container {
  top: 1.25rem;
  opacity: 0;
  transition: 0.5s all;
}
#portfolio .layer h6 {
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.125rem;
  position: relative;
  margin-bottom: 0.9375rem;
  transform: translateY(-0.9375rem);
  transition: 0.5s all;
}

#portfolio .layer .layer-icons i {
  display: inline-block;
  width: 1.875rem;
  height: 1.875rem;
  line-height: 1.75rem;
  border-radius: 50%;
  border: 1px solid #111;
  background-color: #111;
  color: #eee;
  font-size: 0.875rem;
  transform: translateY(0.9375rem);
  transition: 0.5s all;
}

#portfolio ul {
  margin-bottom: 3.125rem !important;
}

#portfolio .tab-content {
  transition: 0.4s all;
}

#portfolio .layer .layer-icons i:hover {
  color: #111;
  background-color: white;
}

#portfolio .item:hover .layer-container {
  top: 0;
  opacity: 1;
}

#portfolio .item:hover h6 {
  transform: translateY(0);
}

#portfolio .item:hover i {
  transform: translateY(0);
}

/* testimonial */

#testimonial figure {
  width: 5.625rem;
  height: 5.625rem;
  border-radius: 50%;
  overflow: hidden;
  margin: 0 auto 0.9375rem;
}

#testimonial .testimonial-content p {
  line-height: 1.6;
  margin: 0;
  font-size: 0.9375rem;
  color: #748182;
  font-weight: lighter;
}

#testimonial .testimonial-content h6 {
  font-size: 1rem;
  font-weight: 800;
  margin: 1.875rem 0 0.3125rem;
}

#testimonial .testimonial-content span {
  font-size: 0.75rem;
  color: #888;
  margin-bottom: 1.875rem;
  font-weight: 600;
}

#testimonial .carousel-item {
  transition: 0.4s all;
}

#testimonial .carousel-indicators [data-bs-target] {
  width: 0.625rem;
  height: 0.625rem;
  background: #869791;
  display: block;
  transition: opacity 0.2s ease;
  border-radius: 50%;
  padding: 0;
  border: 0;
  margin-inline: 0.4rem;
}

/* counter */

#counter span {
  font-size: 1.875rem;
  margin-bottom: 0.9375rem;
  display: block;
}

#counter h3 {
  font-weight: 800;
  margin-bottom: 0.9375rem;
  font-size: 1.875rem;
}

#counter p {
  font-weight: 600;
  margin-bottom: 1.875rem;
  color: #748182;
  font-size: 0.9375rem;
}

/* Out team  */

#blog .card {
  background-color: rgba(52, 52, 52, 0.8) !important;
}
#blog .card-body {
  padding: 1.5625rem;
}
#blog .card-body h4 {
  font-weight: 600;
  font-size: 1.5625rem;
  margin-bottom: 0.3125rem;
}

#blog .card-body h5 {
  font-weight: 800;
}

#blog .social-media-layer .layer {
  background-color: rgba(255, 255, 255, 0.95);
  transition: 0.4s all;
  rotate: y 180deg;
  opacity: 0;
  scale: 0.5;
}

#blog .social-media-layer li {
  padding-right: 0.3125rem;
  padding-left: 0.3125rem;
  display: inline-block;
}

#blog .social-media-layer a {
  border: 1px solid #000;
  color: #fff;
  background-color: #000;
  display: block;
  font-size: 20px;
  height: 40px;
  width: 40px;
  line-height: 40px;
  text-align: center;
  border-radius: 50%;
}

#blog .social-media-layer a:hover {
  color: #000;
  background-color: #fff;
}

#blog figure img {
  transition: 0.4s all;
}

#blog figure:hover img {
  scale: 1.2;
}

#blog figure:hover .layer {
  rotate: y 0deg;
  opacity: 1;
  scale: 1;
}

/* contact */
#contact .contact-info {
  margin-bottom: 3.125rem;
}
#contact .contact-info span {
  font-size: 1.5625rem;
  margin-bottom: 0.9375rem;
  width: 3.75rem;
  height: 3.75rem;
  line-height: 3.75rem;
  background: #f4f4f4;
  border-radius: 50%;
  transition: all 0.5s;
  display: inline-block;
}

#contact .contact-info h6 {
  margin-bottom: 0.9375rem;
  font-weight: 800;
  font-size: 1.125rem;
}

#contact .contact-info p {
  word-spacing: 0.125rem;
  font-size: 0.875rem;
  line-height: 1.6;
  color: #748182;
}

#contact .contact-info .inner:hover span {
  background: black;
  color: white;
}

#contact form .form-control {
  width: 100%;
  border-radius: 0.3125rem;
  padding: 0.625rem;
  background: #f4f4f4;
  font-size: 0.75rem;
  margin-bottom: 0.9375rem;
}

#contact form textarea {
  height: 10rem;
  max-height: 10rem;
  max-width: 100%;
}
#contact form button {
  padding: 0.625rem 2.5rem;
  border: 0.0625rem solid #1c1c1c;
  border-radius: 0.3125rem;
  font-size: 0.8125rem;
  transition: 0.4s all;
}
#contact form button:hover {
  background-color: white;
  color: black;
}

/* footer */

footer {
  padding: 1.875rem;
}

footer p {
  font-size: 0.8125rem;
  word-spacing: 0.125rem;
  color: #748182;
}
