* {
  scrollbar-color: #232323 transparent;
}

.navbar .bg {
  background: transparent !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

.navbar .bord {
  border: 0 !important;
  padding: 0 !important;
}

.navbar .navbar-nav {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: start;
}

.navbar-toggler {
  margin-top: 14px;
}

.section-padding-bottom {
  padding-top: 60px;
  padding-bottom: 100px;
}

.first-nav-link {
  padding-left: 0 !important;
  margin-left: 0 !important;
}

.profile-img-border {
  position: relative;
  padding: 16px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 32px;
  /* image is square (622x622) - reserve the box up front so the text
     below it never jumps when the file arrives (fixes CLS) */
  aspect-ratio: 1 / 1;
}

.skills .item {
  padding: 15px 15px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 10px;
  position: relative;
}

.pill-btn {
  border-radius: 8px;
  padding: 10px 20px;
  font-size: 14px;
  display: inline-flex;
  align-items: center;
  gap: 8px; /* Space between icon and text */
  border: 1px solid rgba(255, 255, 255, 0.145);
  margin-top: 12px;
}
.pill-btn .icon {
  font-size: 16px;
}
.pill-btn img {
  width: 20px; /* Adjust size as needed */
  height: 20px;
  filter: grayscale(0.4);
}

.img-border {
  border-radius: 16px;
  border: 2px solid var(--maincolor);
  padding: 4px;
}

.gallery a {
  color: var(--maincolor);
}

@media screen and (max-width: 992px) {
  .navbar .bg {
    background: black !important;
  }

  .first-nav-link {
    padding-left: 10px !important;
    margin-left: 5px !important;
  }
}

@media screen and (max-width: 768px) {
  h1 {
    font-size: 32px;
  }
  h5 {
    font-size: 18px;
  }

  .section-mt-xs {
    margin-top: 24px;
  }

  .section-padding-bottom {
    padding-top: 24px;
  }

  .profile-img-border {
    text-align: center;
    width: 80%;
  }
}

/* Inline replacements for the 5 FontAwesome glyphs this page used.
   height:1em + auto width + -.125em baseline shift reproduces the icon
   font's own metrics exactly (448/512 ascent, -64/512 descent). */
.fa-svg {
  display: inline-block;
  height: 1em;
  width: auto;
  overflow: visible;
  vertical-align: -0.125em;
  fill: currentColor;
}

/* The old <i> was a text character, so .ls1's 1px letter-spacing applied
   after it. An inline-block SVG gets no letter-spacing - add it back so
   the icon occupies exactly the same 14px it always did. */
.ls1 .fa-svg {
  margin-right: 1px;
}

/* ---------------------------------------------------------------
   Portfolio: row layout (was a 3-up grid).
   style.css:3449 sets .portfolio .items{margin-top:40px} to space the
   grid's rows apart - for stacked rows that lands between every row, so
   it is reset here and the gap is driven from one place.
----------------------------------------------------------------- */
.portfolio .gallery .items {
  margin-top: 0;
  margin-bottom: 16px;
}

.portfolio .item {
  display: flex;
  align-items: center;
  gap: 18px;
  padding: 12px;
}

.portfolio .item .img {
  flex: 0 0 168px;
  width: 168px;
  aspect-ratio: 16 / 9;
}

.portfolio .item .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.portfolio .item .cont {
  flex: 1 1 auto;
  min-width: 0;
  padding: 0;
}

.portfolio .item .cont > div {
  width: 100%;
}

.portfolio .item .cont h6 {
  margin-bottom: 6px;
}

.portfolio .item .cont .description {
  margin-bottom: 8px !important;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.portfolio .item .cont .tag {
  margin-bottom: 0;
  display: inline-block;
}

@media screen and (max-width: 768px) {
  .portfolio .item {
    gap: 12px;
    padding: 10px;
  }
  .portfolio .item .img {
    flex: 0 0 104px;
    width: 104px;
  }
  .portfolio .item .cont h6 {
    font-size: 15px;
  }
  .portfolio .item .cont .description {
    font-size: 13px !important;
  }
}
