/* display background color black on navbar scroll */
.navbarScroll.navbarDark {
  background-color: #6f3fa6;
}

body {
  font-family: "Poppins", sans-serif;
}

html {
  scroll-behavior: smooth;
}

/* hero background image */
.bgimage {
  height: 100vh;
  background: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3)),
    url("images/IMG_0120.jpg");
  background-size: cover;
  background-position: center 25%;
  position: center;
}
/* text css above hero image*/
.hero_title {
  font-size: 4.5rem;
  text-shadow: 2px 2px 4px #000000;
}
.hero_desc {
  font-size: 2rem;
  text-shadow: 2px 2px 4px #000000;
}
.hero-text {
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: white;
}

/* spacing on all sections */
/* #about, #services, #portfolio, #contact {
    margin-top: 4rem;
    padding-top: 4rem;
} */
#contact {
  padding-bottom: 4rem;
}
/* about section image css */
.imageAboutPage {
  width: 100%;
}

/* social media icons styling */
.social-icons {
  font-size: 36px;
  cursor: pointer;
}
.fa-facebook:hover,
.fa-instagram:hover,
.fa-twitter:hover,
.fa-linkedin:hover,
.fa-twitch:hover,
.fa-github:hover {
  color: #5b18c2;
}
.fab {
  color: #000000;
}
/* footer styling */
#footer {
  background-color: #808080;
  text-align: center;
  padding: 2rem 0;
  margin-top: 3rem;
}

#footer .social-icons a {
  color: #fff;
  margin: 0 1rem;
  transition: color 0.3s ease;
}

#footer .social-icons a:hover {
  color: #6f3fa6;
}

#footer .social-icons i,
#footer .social-icons svg,
#footer .social-icons .fab,
#footer .social-icons .fas,
#footer .social-icons .far,
#footer .social-icons .fa {
  color: inherit;
}

/* button color change */
.btn-success {
  background-color: #5b18c2 !important;
  border-color: #5b18c2 !important;
}

/* card image sizing */
.card-img-top {
  height: 300px; /* Set your desired height */
  object-fit: cover; /* Ensures the image covers the area and is cropped evenly */
  width: 100%; /* Ensures full width of the card */
}

.portfolioContent {
  height: 100%;
  width: 100%;
}

.portfolioContent .card-body {
  display: flex;
  flex-direction: column;
}

.portfolioContent .card-body .text-center {
  margin-top: auto;
}

/* skills section styling */
.skill-icon {
  font-size: 1.35rem;
  width: 28px;
  text-align: center;
}
.skill-item .progress {
  height: 1.1rem;
}
.skill-item .progress-bar {
  transition: width 1.2s ease-in-out;
}

/* center skills list and bars */
#skills-list {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  align-items: center; /* center each skill-item horizontally */
}
.skills-list {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  align-items: center;
}
/* category heading */
.skill-category h4 {
  font-size: 1.15rem;
  font-weight: 600;
}
.skill-category {
  width: 100%;
}
.skill-category .skill-item {
  margin-left: 0;
}
.skill-item {
  width: 100%;
  max-width: 520px; /* constrain width so bars don't span entire column */
  margin: 0 auto;
}
.skill-item {
  display: flex;
  flex-direction: column;
  align-items: center; /* center children horizontally */
}
.skill-item .d-flex {
  justify-content: center; /* center icon and title */
  width: 100%;
}
.skill-item .progress {
  width: 100%;
  max-width: 520px; /* keep same max width as the item */
  margin: 0 auto; /* center the progress container */
}
.skill-item h5 {
  margin: 0;
}
.progress-bar {
  border-radius: 6px;
  text-align: center; /* center the percent text inside the bar */
  padding-right: 0.25rem; /* small padding so text doesn't touch edge */
}

/* progress track neutral background */
.skill-item .progress {
  background-color: #eee;
}

/* reveal animation for skills */
.skill-item {
  opacity: 0;
  transform: translateY(10px);
  transition: opacity 420ms ease, transform 420ms ease;
}
.skill-item.skill-reveal {
  opacity: 1;
  transform: translateY(0);
}

/* star rating styles */
.skill-star {
  color: #6f3fa6;
} /* purple fill for filled stars */
.skill-stars .far {
  color: #ddd;
} /* outline color for empty stars */
.skill-stars .fas {
  color: #6f3fa6;
} /* filled star color */
.skill-stars {
  display: inline-block;
  vertical-align: middle;
}
.skill-item small.text-muted {
  vertical-align: middle;
}

.my-text {
  text-shadow: 2px 2px 4px #000000; /* horizontal offset, vertical offset, blur, color */
}

/* about section text size */
#about p,
#about li {
  font-size: 1.5rem;
}

#about .lead {
  font-size: 1.6rem;
}

/* Portfolio Card Hover Effect */
.portfolioContent {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.portfolioContent:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
}

/* Back to top button */
#btn-back-to-top {
  position: fixed;
  bottom: 20px;
  right: 20px;
  display: none;
  z-index: 99;
}
