.background {
  background: rgba(0, 0, 0, 0.8);
}

.xl-text {
  font-size: clamp(2.5rem, 1.6666666667rem + 2.6666666667vw, 4rem);
}

.hr-heading {
  display: inline-block;
  width: 8rem;
  height: 0.125rem;
  border: none;
  opacity: 1;
  background-color: var(--bs-primary);
}

.float-end .fa-stack {
  overflow: hidden;
}

.fa-linkedin-in.fa-stack-1x {
  scale: 1.3;
}

.fa-github.fa-stack-1x {
  scale: 2.2;
}

.header {
  background: linear-gradient(rgba(0, 0, 0, 0.35), rgba(0, 0, 0, 0.75)), url("../assets/header-background.jpg");
  background-position: left center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 37.5rem;
}
@media (width <= 768px) {
  .header {
    text-align: center;
    background-position: center center;
  }
}

.vertical-decoration {
  top: 50%;
  transform: translateY(-50%);
  width: 1.25rem;
}

.partners-container {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 2rem;
  flex-wrap: wrap;
}

.contact .form-check {
  font-size: 0.8rem;
  display: flex;
  align-items: center;
  gap: 0.25rem;
  accent-color: var(--bs-primary);
}

.video-play-button,
.video-play-button::before,
.video-play-button::after {
  position: absolute;
  z-index: 10;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  display: block;
  box-sizing: content-box;
  padding: 1.25rem;
  cursor: pointer;
}

.video-play-button::before {
  content: "";
  z-index: 0;
  width: 3.2rem;
  height: 3.2rem;
  background-color: var(--bs-primary);
  animation: pulse 1500ms ease-in-out infinite;
}

.video-play-button::after {
  content: "";
  z-index: 1;
  width: 3.1rem;
  height: 3.1rem;
  background-color: var(--bs-primary);
  transition: all 0.2s;
}

.video-play-button span {
  position: relative;
  display: block;
  z-index: 3;
  top: 0;
  left: 6px;
  width: 0;
  height: 0;
  border-left: 1.6rem solid #fff;
  border-top: 1rem solid transparent;
  border-bottom: 1rem solid transparent;
}

.video-modal .modal-dialog {
  max-width: 70rem;
  margin-block-start: 1.2rem;
}

@media (width <= 992px) {
  .video-points {
    padding: 0 !important;
    text-align: center;
  }
  .video-points .col-lg-4 {
    margin-block-end: 2rem;
  }
}
@keyframes pulse {
  0% {
    transform: translate(-50%, -50%) scale(1);
    opacity: 1;
  }
  100% {
    transform: translate(-50%, -50%) scale(1.5);
    opacity: 0;
  }
}
.projects .card {
  cursor: pointer;
}

.newsletter .col-lg-6.offset-lg-3 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.footer p,
.footer ul,
.footer a {
  font-size: 0.81rem;
}

.footer small {
  user-select: none;
  font-size: 0.75rem;
}
