/*service pages*/
  
.hero-section {
    background-image: url('images/hero-background.webp');
    background-size: cover;
    background-position: top;
    color: #08002f;
    position: relative;
  }
  .hero-section span{
    color: #2251FE;
  }
  
  .hero-container {
    padding-top: 70px;
    padding-bottom: 70px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    max-width: 1300px;
    margin: 0 auto;
  }
  
  .hero-content {
    flex: 1;
  
  }
  
  .hero-content h1 {
    font-size: 3rem;
    margin-bottom: 1rem;
    color: #08002f;
  }
  
  .hero-content p {
    font-size: 1.2rem;
    margin-bottom: 2rem;
    color: #333333;
  }
  

  .hero-image {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  
  .hero-image img {
    width: 100%;
 
  }
  
  /* Responsive Styles */
  @media screen and (max-width: 1024px) {
    .hero-container {
      flex-direction: column;
      text-align: center;
        padding-top: 40px;
        padding-bottom: 10px;
    }
  
    .hero-content {
      padding-right: 0;
      margin-bottom: 2rem;
    }
  
    .hero-content h1 {
      font-size: 2.5rem;
    }
  
    .hero-content p {
      font-size: 1rem;
    }
  
    .hero-image img {
      max-width: 90%;
    }
  }
  
  @media screen and (max-width: 768px) {
    .hero-content h1 {
      font-size: 2rem;
    }
  
    .hero-content p {
      font-size: 0.9rem;
    }
  
    .cta-button {
      padding: 0.7rem 1.2rem;
      font-size: 0.9rem;
    }}

    /*button*/
/* Parent container styles */
.button-container {
    display: flex; /* Enables flexbox layout */
    justify-content: center; /* Horizontally centres the button */
    align-items: center; /* Vertically centres the button */
    height: 100vh; /* Makes the container fill the entire viewport height */
  }
  
  /* Button styles */
  .contact-btn {
    font-weight: 600;
    font-size: 14px;
    padding: 14px 52px;
    background: linear-gradient(to right, #8a2be2, #0F6AE1);
    color: #fff;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    position: relative;
    overflow: hidden;
    transition: background 0.3s ease;
    text-decoration: none;
    display: inline-block; /* Keeps the button size based on content */
  }
  
  .contact-btn::before {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.273);
    opacity: 0;
    animation: shineLeftRight 2s linear infinite alternate;
  }
  
  @keyframes shineLeftRight {
    0% {
      left: -100%;
      opacity: 0;
    }
    50% {
      left: 100%;
      opacity: 1;
    }
    100% {
      left: -100%;
      opacity: 0;
    }
  }
  
  .contact-btn:hover::before {
    animation: shineRightLeft 2s linear infinite alternate;
  }
  
  @keyframes shineRightLeft {
    0% {
      left: 100%;
      opacity: 0;
    }
    50% {
      left: -100%;
      opacity: 1;
    }
    100% {
      left: 100%;
      opacity: 0;
    }
  }
  

  .heading {
    max-width: 1400px;
    margin: 40px auto 0 auto; 
    text-align: center; 
  }
  
  .heading h2{
    text-align: center;
    font-size: 32px;
  }
  
  @media (max-width: 1024px) {
    .heading h2 {
      font-size: 22px;
    }
  
    .heading h3 {
      font-size: 20px;
    }

  }  
  
  
  .heading h3{
    text-align: center;
    font-size: 22px;
    font-weight: 200;
    padding-bottom: 10px;
    margin-bottom: 0px;
    border-bottom: solid 3px #0F6AE1 ;
   
  }
/* General Layout */
.content-section {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 2rem;
    flex-wrap: wrap; /* Ensures content wraps when space is constrained */
  }
  
  .content-container {
    display: flex;
    width: 100%;
    justify-content: space-between;
    align-items: flex-start; /* Aligns items to the start for better positioning */
  }
  
  .left-column {
    flex: 2; /* Left column takes more space */
    margin-right: 2rem;
  }
  
  .right-column {
    flex: 1; /* Right column takes less space */
    display: flex;
    justify-content: left;
  }
  
  /* Paragraph Styling */
  .paragraph {
    text-align: justify;
    margin: 0 auto;
    max-width: 800px;
    font-size: 18px;
  }
  
  /* Right column adjustments for DotLottie */
  .right-column dotlottie-player {
    max-width: 100%;
    height: auto;
    border-radius: 10px;
  }
  
  /* Mobile View */
  @media screen and (max-width: 768px) {
    /* Ensures content stacks on top of each other */
    .content-container {
      flex-direction: column; /* Stack columns vertically */
      align-items: center; /* Centers both columns */
    }
  
    .left-column {
      margin-right: 0; /* Removes margin on smaller screens */
      margin-bottom: 2rem; /* Space between columns */
      flex: 1 1 100%; /* Ensures left column takes full width on mobile */
    }
  
    .right-column {
      margin-bottom: 2rem; /* Adds space below the right column */
      flex: 1 1 100%; /* Ensures right column takes full width on mobile */
      display: flex;
      justify-content: center; /* Centers the Lottie animation */
      align-items: center; /* Centers the content vertically */
    }
  
    .paragraph {
      font-size: 16px; /* Adjust font size for mobile */
      max-width: 100%; /* Ensures paragraph takes full width on smaller screens */
    }
  
    .right-column dotlottie-player {
      width: 90%; /* Adjust the size of the Lottie animation */
      height: auto;
      margin: 0 auto; /* Centers the Lottie animation */
    }
  }
  


  /*contact banner */
  .webdesign-contact-section {
    width: 100%;
    background-image: linear-gradient(to top, rgba(15, 106, 225, 0.414), rgb(0, 0, 0)), 
                      url('images/background-contact.webp'); /* Gradient + Image */
    background-size: cover;
    background-position: center;
    background-attachment: fixed; /* Makes the background move on scroll */
    padding: 4rem 2rem;
    text-align: center;
    color: #fff; /* White text */
  }
  
  .webdesign-contact-container {
    max-width: 1200px;
    margin: 0 auto;
  }
  
  /* Heading Styling */
  .webdesign-contact-heading h2 {
    font-size: 32px;
    margin-bottom: 2rem;
    font-weight: bold;
    color: #fff;
  }
  
  /* Columns Layout */
  .webdesign-contact-columns {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 2rem; /* Space between columns and the vertical line */
    margin-bottom: 2rem;
  }
  
  .contact-column {
    font-size: 20px;
    color: #fff; /* White text for numbers */
  }
  
  .contact-column a {
    color: #fff; /* White text for clickable links */
    text-decoration: none; /* Remove underline */
    transition: color 0.3s ease;
    font-size: 26px;
  }
  
  .contact-column a:hover {
    color: #0F6AE1; /* Accent colour on hover */
  }
  
  .vertical-line {
    height: 30px;
    width: 2px;
    background-color: #0F6AE1; /* Accent color for the line */
    align-self: stretch; /* Ensures vertical centering */
  }
  
  /* Button Styling */
  .webdesign-contact-button .contact-button {
    display: inline-block;
    padding: 0.75rem 2rem;
    background-color: #0F6AE1; /* Accent color for button background */
    color: #fff; /* White text on the button */
    text-decoration: none;
    font-size: 18px;
    font-weight: bold;
    border-radius: 5px;
    transition: background-color 0.3s ease;
  }
  
  .webdesign-contact-button .contact-button:hover {
    background-color: #004b9a; /* Darker shade for hover effect */
  }
  
  /* Responsive Design */
  @media screen and (max-width: 768px) {
    .webdesign-contact-columns {
      flex-direction: column;
      gap: 1rem;
    }
  
    .vertical-line {
      display: none; /* Hides the vertical line on small screens */
    }
  
    .webdesign-contact-heading h2 {
      font-size: 28px; /* Adjust heading size for mobile */
    }
  
    .contact-column {
      font-size: 18px; /* Adjust font size for mobile */
    }
    .webdesign-contact-section{
        margin-top: -30px;
    }
  }
  

.background1{
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.505), rgba(0, 0, 0, 0.621)), 
    url('images/background1.webp'); /* Gradient + Image */
}
.background2{
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.505), rgba(0, 0, 0, 0.621)), 
    url('images/background2.webp'); /* Gradient + Image */
}
.background3{
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.505), rgba(0, 0, 0, 0.621)), 
    url('images/background3.webp'); /* Gradient + Image */
}
.background4{
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.505), rgba(0, 0, 0, 0.621)), 
    url('images/background4.webp'); /* Gradient + Image */
}
.background5{
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.505), rgba(0, 0, 0, 0.621)), 
    url('images/background5.webp'); /* Gradient + Image */
}
.background6{
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.505), rgba(0, 0, 0, 0.621)), 
    url('images/background6.webp'); /* Gradient + Image */
}

  .webdesign-projects{
    width: 100%;
  
    background-size: cover;
    background-position: center;
    background-attachment: fixed; /* Makes the background move on scroll */
    padding: 0;
    text-align: center;
    color: #fff; /* White text */
  }
  .projectsweb {
    display: flex;
    flex-direction: column; /* Ensures the content is stacked vertically */
    justify-content: center; /* Centers content vertically */
    align-items: center;     /* Centers content horizontally */
    text-align: center;      /* Centers text inside the paragraph */
    margin-top: 70px;
    margin-bottom: 50px;
           /* Makes sure it takes up the full viewport height */
  }
  
  .projectsweb h2 {
    color: #0F6AE1;
    font-size: 30px;
    font-weight: 300;
    text-align: center; /* Centers the heading */
  }
  
  .projectsweb p {
    color: #2b2b2b;
    font-size: 18px;
    margin-bottom: 20px;
    max-width: 900px;
    text-align: center; /* Centers the paragraph text */
  }
  .projectsweb img{
    width: 80%;
    margin-bottom: -50px;
  }

    /* Responsive Design */
    @media screen and (max-width: 768px) {
        .projectsweb img{
            width: 80%;
            margin-bottom: -15px;
          }
          .projectsweb h2 {
            font-size: 25px;
           
          }
          
          .projectsweb p {
        margin-left: 5px;
        margin-right: 5px;
            font-size: 15px;}

            .projectsweb {


                margin-top: 40px;
                margin-bottom: 40px;
                       /* Makes sure it takes up the full viewport height */
              }
        
        }

        /*languages*/
        
#Programming{
    padding: 40px 0;
  }
  .sub-title2{
    font-size: 38px;
  }
  .carousel-container {
    margin-top: 50px;
    width: 100%;
    overflow: hidden;
    position: relative;
  }
  
  .carousel {
    display: flex;
    animation: scroll 5s linear infinite;
    will-change: transform;
  }
  .carousel img {
    max-height: 100px; /* Adjust to your preferred size */
    width: auto;
    margin: 0 10px; /* Space between images */
  }
  
  /* Seamless scrolling animation */
  @keyframes scroll {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-50%);
    }
  }
  
  
  .languages {
    max-width: 1400px;
    margin: 40px auto; 
    text-align: center; 
    margin-bottom: 50px;
  }
  
  .languages h2{
    text-align: left;
    font-size: 32px;
  }
  
  
  
  
  .languages h3{
    text-align: left;
    font-size: 18px;
    font-weight: 200;
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: solid 3px #0F6AE1 ;
   
  }
  
  @media (max-width: 1024px) {
    .languages h2 {
      font-size: 22px;
      margin-left: 10px;
      margin-right: 10px;
    }
  
    .languages h3 {
      font-size: 20px;
      margin-left: 10px;
      margin-right: 10px;
    }
  
  }
  
    
  /*Contact*/
.contact_content{
  background-image: url('images/contact_background.webp');
  background-size: cover;
  background-position: bottom;
  padding-top: 20px;
  padding-bottom: 20px;
}