/*

OneTel Template

http://www.templatemo.com/tm-468-onetel

*/

body {
  background: #101010;
  color: #808080;
  font-family: 'Montserrat', sans-serif;
  font-weight: 400;
}

@media (min-width: 768px) {
  .container {
    width: 700px;
  }
}

@media (min-width: 992px) {
  .container {
    width: 900px;
  }
}

@media (min-width: 1200px) {
  .container {
    width: 1000px;
  }
}

.mt20 {
  margin-top: 20px;
}

.mt30 {
  margin-top: 30px;
}

/* heading section */
h1,
h2,
h3,
h4 {
  color: #fff;
  font-weight: bold;
}

h1,
h2 {
  font-size: 30px;
}

/* images retina */
img {
  max-width: 100%;
  height: auto;
}

/* button section */
.btn {
  background: transparent;
  border: 2px solid #fff;
  border-radius: 0px;
  box-shadow: none;
  color: #fff;
  padding: 12px 18px;
  font-size: 13px;
  font-weight: bold;
  transition: all 0.4s ease-in;
}

.btn:hover {
  background: #009988;
  border-color: transparent;
}

.email {
  margin-top: 10px;
  padding: 8px 12px;
}

/* navigation */

.navbar-default {
  background: #202020;
  border: none;
  border-left: 6px solid #d54ab6;
  padding-right: 40px;
  margin: 0 !important;
  position: relative;
  top: 20px;
}

.navbar-default .navbar-brand {
  font-size: 40px;
  line-height: 40px;
  padding-top: 4px;
}

.navbar-default .navbar-nav li a {
  color: #f2f2f2;
  font-size: 13px;
  font-weight: 400;
  line-height: 40px;
  transition: all 0.4s ease-in;
}

.navbar-default .navbar-nav>li>a:hover,
.navbar-default .navbar-nav>li>a:focus {
  color: #ffa500;
}

.navbar-default .navbar-nav>.active>a,
.navbar-default .navbar-nav>.active>a:hover,
.navbar-default .navbar-nav>.active>a:focus {
  color: #ffa500;
  background-color: transparent;
}

.navbar-default .navbar-toggle {
  background: #d54ab6;
  border-radius: 0px;
  border: none;
  margin-top: 20px;
  margin-bottom: 30px;
}

.navbar-default .navbar-toggle .icon-bar {
  background: #fff;
  border-color: transparent;
}

.navbar-default .navbar-toggle:hover,
.navbar-default .navbar-toggle:focus {
  background-color: transparent
}

.active {
  background: #333;
}

/* home section */
/* Main Section */
/* Main Section */
#home {
  position: relative;
  width: 100%;
  min-height: 500px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  overflow: hidden;
  z-index: 1;
}

/* Gradient Overlay for a richer look */
#home::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  /* A beautiful gradient overlay for enhanced contrast and depth */
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0.4) 50%, rgba(0, 0, 0, 0.8) 100%);
  z-index: 0;
}

/* Background Video */
#background-video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: -1;
}

/* Container: keep content above overlay & add a subtle floating effect */
#home .container {
  position: relative;
  z-index: 1;
  padding: 20px;
  animation: subtleFloat 6s ease-in-out infinite;
}

/* Floating effect for a gentle dynamic feel */
@keyframes subtleFloat {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-10px);
  }
}

/* Keyframes for a combined fade, slide, and zoom-in animation */
@keyframes fadeInUpZoom {
  0% {
    opacity: 0;
    transform: translateY(50px) scale(0.95);
  }

  60% {
    opacity: 0.7;
    transform: translateY(10px) scale(1.02);
  }

  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

/* Headings and Paragraphs with advanced, layered animations */
#home h3 {
  font-size: 50px;
  line-height: 1.2;
  margin-bottom: 15px;
  letter-spacing: 2px;
  text-shadow: 2px 2px 8px rgba(0, 0, 0, 0.8);
  opacity: 0;
  animation: fadeInUpZoom 1.2s ease-out 0.3s forwards;
}

#home h1 {
  font-size: 60px;
  line-height: 1.2;
  margin-bottom: 20px;
  letter-spacing: 2px;
  text-shadow: 2px 2px 8px rgba(0, 0, 0, 0.8);
  opacity: 0;
  animation: fadeInUpZoom 1.2s ease-out 0.6s forwards;
}

#home p {
  font-size: 20px;
  line-height: 1.6;
  max-width: 700px;
  margin: 0 auto;
  text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.7);
  opacity: 0;
  animation: fadeInUpZoom 1.2s ease-out 0.9s forwards;
}

/* Responsive Adjustments */
@media (max-width: 768px) {
  #home {
    padding: 120px 20px 80px;
  }

  #home h1 {
    font-size: 40px;
  }

  #home h3 {
    font-size: 30px;
  }

  #home p {
    font-size: 18px;
  }
}

@media (max-width: 480px) {
  #home h1 {
    font-size: 32px;
  }

  #home h3 {
    font-size: 24px;
  }

  #home p {
    font-size: 16px;
  }
}

/* divider section */
.divider {
  margin-top: 80px;
  color: #fff;
  text-align: center;
}

.divider .fa {
  border: 2px solid #fff;
  border-radius: 50%;
  font-size: 32px;
  width: 80px;
  height: 80px;
  line-height: 76px;
  text-transform: capitalize;
}

.divider h2 {
  padding-bottom: 4px;
}

.divider .divider-wrapper {
  padding: 40px 20px 40px 20px;

  position: relative;
  bottom: 40px;
  transition: all 0.4s ease-in;
}

.divider .divider-wrapper:hover {
  bottom: 60px;
  cursor: pointer;
}

.divider .divider-one {
  background: #c14000;
}

.divider .divider-two {
  background: #009988;
}

.divider .divider-three {
  background: #ffa500;
}

/* about section */
#about-header {
  background: url('../images/about-header.jpg') no-repeat;
  background-size: cover;
  background-position: center;
  min-height: 500px;
  padding-top: 160px;
}

#about {
  padding-top: 60px;
}

#about .container {
  background: #191919;
}

#about .col-md-6 {
  padding: 0;
  margin: 0;
}

#about .about-des {
  padding-top: 20px;
  padding-left: 30px;
  padding-right: 20px;
}

#about .btn {
  margin-top: 30px;
}

/* team section */
#team {
  padding-top: 60px;
  padding-bottom: 80px;
  
}
@media (max-width: 768px) {
  #team{
    display: grid;
    justify-content: center;
  }
}
#team h2 {
  padding-bottom: 30px;
  text-align: center;
}

#team h3 {
  padding-bottom: 10px;
}

#team .team-wrapper {
  border: 2px solid #303030;
  padding: 20px;
}

#team h4 {
  color: #d54ab6;
}

#team img {
  opacity: 0.8;
}

#team hr {
  border-color: #303030;
  margin-top: 80px;
  margin-bottom: 80px;
}

#team strong {
  display: inline-block;
  padding-top: 12px;
  padding-bottom: 10px;
}

#team .progress {
  border-radius: 0px;
  height: 4px;
}

/* portfolio section */
#portfolio-header {
  background: url('../images/portfolio-header.jpg') no-repeat;
  background-size: cover;
  background-position: center;
  min-height: 500px;
  padding-top: 160px;
}
/* Portfolio Section */
#portfolio-header {
  background: url('../images/portfolio-header.jpg') no-repeat center center/cover;
  min-height: 500px;
  padding-top: 160px;
}

/* Portfolio Layout */
#portfolio {
  text-align: center;
  padding: 80px 5%;
}

/* Portfolio Heading */
#portfolio h2 {
  padding-bottom: 20px;
}

/* Fix Grid Spacing */
#portfolio .row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

#portfolio .col-md-4,
#portfolio .col-md-3 {
  padding: 10px;
  box-sizing: border-box;
}

/* Image Styling */
#portfolio img {
  width: 100%;
  height: 200px;
  object-fit: cover;
  display: block;
  opacity: 0.8;
  transition: opacity 0.4s ease-in-out, transform 0.3s ease-in-out;
  border-radius: 8px;
  /* Optional: adds a smooth rounded effect */
}

#portfolio img:hover {
  opacity: 1;
  transform: scale(1.05);
  /* Slight zoom effect */
}

/* Button Styling */
#portfolio .btn {
  margin-top: 30px;
}
/* contact section */
#contact-header {
  background: url('../images/contact-header.jpg') no-repeat;
  background-size: cover;
  background-position: center;
  min-height: 500px;
  padding-top: 160px;
}

#contact {
  padding-top: 60px;
  padding-bottom: 60px;
}

#contact h2 {
  text-align: center;
  padding-bottom: 30px;
}

#contact .form-control {
  background: #202020;
  border: none;
  border-radius: 0px;
  box-shadow: none;
  margin-bottom: 20px;
  transition: all 0.4s ease-in;
  color: #fff;
}

#contact .form-control:focus {
  background: #404040;
}

#contact input {
  height: 53px;
}

.form-control::-moz-placeholder {
  color: #fff;
  opacity: 1;
}

.form-control:-ms-input-placeholder {
  color: #fff;
}

.form-control::-webkit-input-placeholder {
  color: #fff;
}

#map-canvas {
  border: none;
  width: 100%;
  height: 300px;
}

/* footer section */
footer {
  background: #1c1c1c;
  padding-top: 60px;
  padding-bottom: 60px;
}

footer .fa {
  font-size: 18px;
  margin-right: 10px;
  padding: 5px;
}

footer h3 {
  padding-bottom: 10px;
}

footer .newsletter p {
  padding-bottom: 10px;
}

footer .form-control {
  background: transparent;
  border: 2px solid #fff;
  border-radius: 0px;
  padding-bottom: 10px;
}

footer .form-control:focus,
footer .form-control:hover {
  color: #fff;
  background: #806040;
  border-color: transparent;
}

footer .input-group-addon {
  background: #fff;
}

footer a,
footer a:visited {
  font-size: 14px;
  color: #999;
}

footer a:hover {
  color: #fff;
  text-decoration: none;
}

/* copyright section */
.copyright {
  margin: 10px 0px;
}

.copyright p {
  padding-top: 20px;
}

.social-icons {
  padding: 0px;
  margin: 0px;
}

.social-icons li {
  display: inline-block;
  list-style: none;
  background: #303030;
  margin: 10px 0px 0px 0px;
}

.social-icons li a {
  color: #909090;
  text-decoration: none;
  font-size: 20px;
  padding: 10px 15px;
  text-align: center;
  transition: all 0.4s ease-in;

}

.social-icons li a:hover {
  background: #d54ab6;
  color: #fff;
}

/* media 960 */
@media (max-width: 980px) {
  .divider .divider-wrapper {
    margin-bottom: 20px;
  }

  #about .about-des {
    padding-bottom: 40px;
  }

  #team .team-wrapper {
    margin-bottom: 40px;
  }

  #contact h3 {
    padding-top: 20px;
  }

  #contact .btn {
    margin-bottom: 20px;
  }

  footer h3 {
    padding-top: 30px;
  }
}


/* Keyframe animations */
@keyframes slideIn {
  from {
    transform: translateX(-50%);
    opacity: 0;
  }

  to {
    transform: translateX(0);
    opacity: 1;
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.animate-slide {
  animation: slideIn 1.5s ease-in-out;
}

.animate-fade {
  animation: fadeIn 1.5s ease-in-out;
}

.team-member-last{
  margin-top: 20px;
  justify-content: center;
  display: flex;
}