body {
    overflow-x: hidden;
    overflow-anchor: auto;
    max-width: 100%;
    background-image: url(../img/bgpattern.png);
    background-repeat: repeat;
    background-size: auto;
    animation: movebg 30s linear infinite;
    background-color: rgb(20, 20, 20);
}

.main-content {
    background-color: rgb(20, 20, 20);
    box-shadow:
    0 0 5em rgb(0, 0, 0);
    position: relative;
    justify-content: center;
    align-items: center;
    text-align: center;
    max-width: 1000px;
    margin: 0 auto;
    padding: 20px;
}

.img-link {
    width: 50%;
    height: 50%;
    margin-top: 2%;
}

.prjcts {
    background-color: rgb(30, 30, 30);
    border-radius: 10px;
    justify-content: center;
    align-items: center;
}

.button-play {
    background-color:rgb(150, 0, 0);
    border-radius: 10px;
    cursor : pointer;
    width: 100%;
    align-items: center;
}


@keyframes slideup {
  from {
    transform: translateY(100%);
    opacity: 0;
  }

  to {
    transform: translateY(0%);
    opacity: 1;
  }

}

.freelance-developer {
    display: inline-block;
    overflow: hidden;
    white-space: nowrap;
    font-size: 32px;
    border-right: 2px solid white;
}

.slide-left {
    position: relative;
    justify-content: center;
    align-items: center;
    text-align: center;
    margin-top: 10%;
    margin-bottom: -5%;
    margin-right: 2%;
    opacity: 0;
    transform: translateX(-100%);
    transition: all 0.8s ease-out;
    max-width: 100%!important;
    height: auto;
    overflow: hidden!important;
}
.slide-right {
    position: relative;
    justify-content: center;
    align-items: center;
    text-align: center;
    margin-top: 10%;
    margin-bottom: 5%;
    margin-right: 2%;
    opacity: 0;
    transform: translateX(100%);
    transition: all 0.8s ease-out;
    max-width: 100%!important;
    height: auto;
    overflow: hidden!important;
    
}

.slide-left.animate {
    transform: translateX(0%);
    opacity: 1;
}

.slide-right.animate {
    transform: translateX(0%);
    opacity: 1;
}

h1 {
    color:rgb(255, 255, 255);
}

h2 {
    color:rgb(255, 255, 255);
    position: relative;
    display: flex;
    justify-content: left;
    align-items: left;
    align-content: left;
}

.myprj {
    margin-top: 50px;
}

h3 {
    color:rgb(255, 255, 255);
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 0.75;
}

h4 {
    color:rgb(255, 255, 255);
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align:left;
}

h5 {
    color:rgb(255, 255, 255);
    position: relative;
    display: flex;
    align-items: center;
    text-align: justify;
    text-justify: right;
}

h6 {
    color:#ffffff38;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}

p {
    color:rgb(255, 255, 255);
    position: relative;
    display: flex;
    justify-content: left;
    align-items: left;
}

button {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    color:white;
    background-color: rgb(130, 0, 0);
    border-radius: 5px;
}

button:hover {
    background-color: rgb(130, 0, 0);
}

ul {
    display: inline-table;
}

.profile {
    margin-right: 2%;
    width: 150px;              
    height: 150px;
    object-fit: cover;       
    border-radius: 50%;        
    border: 2px solid red;  
    box-shadow: 0 0 8px red;
    position: relative;
    justify-content: left;
    align-items: left;
    text-align: left;

}

.section-open {
    margin-top: 5%;
    margin-bottom: 5%;
    align-items: baseline;
    justify-content: baseline;
    text-align: left;
    color: red;
    position:left;
}

.section-close {
    margin-bottom: 10%;
    align-items: baseline;
    justify-content: baseline;
    text-align: left;
    color: red;
    position:left;
}

div {
    margin-bottom: 4%;
}

.images {
    margin-top: 5%;
    margin-left: 10%;
    margin-right: 5%;
    height: 100%;
    width: 100%;
}

.meetme {
    margin: 5%;
    max-width: 100%;
    height: auto;
    width: 30%;
}

.row {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
}

.logo {     
    max-width: 100%;
    height: auto;
    width: 40px;
}

.desc {
    position: relative;
    display: inline-block;
}

.desc .hover-text {
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
    background: rgba(0, 0, 0, 0.7);
    color: white;
    padding: 5px 10px;
    border-radius: 5px;
    opacity: 0;
    transition: opacity 0.3s ease;
    white-space: nowrap;
    pointer-events: none;
    font-size: 14px;
}

.desc:hover .hover-text {
    opacity: 1;
}

footer {
    position: relative;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.timeline-container {
    position: relative;
    max-width: 800px;
    margin: 0 auto;
    padding-left: 50px;
}

.timeline-container::before {
    content: '';
    position: absolute;
    top: 12px;
    bottom: 125px;
    left: 27px;
    width: 3px;
    background-color: #ff0000;
    border-radius: 1.5px;
    z-index: 0;
}

.timeline-item {
    position: relative;
    margin-bottom: 25px;
    opacity: 0;
}

.timeline-item.animate {
    animation: slideup 1s ease-out forwards;
}

.timeline-dot {
    width: 20px;
    height: 20px;
    background-color: red;
    border-radius: 50%;
    position: absolute;
    left: -31px;
    top: 0px;
}

.timeline-box {
    background-color: #000000;
    padding: 15px;
    border-radius: 5px;
    border-left: 2px solid red;
    box-sizing: border-box;
    width: 100%;
}

.timeline-title {
    font-size: 22px;
    font-weight: bold;
    color: white;
    margin: 0;
    display: flex;
    justify-content: space-between;
}

.timeline-date {
    font-size: 16px;
    color: #ccc;
    font-weight: normal;
}

.timeline-text {
    font-size: 16px;
    color: #bbb;
    margin-bottom: 5px;
}

.timeline-container h3, .timeline-container p {
    display: block;
    justify-content: unset;
    align-items: unset;
    text-align: left;
}

.timeline-subtitle {
    display: block;
    font-size: 16px;
    color: red;
    margin-top: 2px;
    margin-bottom: 5px;
}

.more-coming {
    margin-left: 40%;
    font-size: 1.5rem;
    color: white;
    font-weight: bold;
    position: relative;
    width: max-content;
    margin-bottom: 10%;
}

.more-coming::after {
    content: '';
    display: inline-block;
    width: 1.2ch;
    text-align: left;
    animation: dots 2.5s steps(4, end) infinite;
}

@keyframes dots {
    0%   { content: ''; }
    25%  { content: '.'; }
    50%  { content: '..'; }
    75%  { content: '...'; }
    100% { content: ''; }
}

.projects {
    background-color: rgb(40, 40, 40);
    border-radius: 10px;
    max-width: 100%!important;
    overflow: hidden!important;
    max-height: 90%;
}

.about-me {
    position: relative;
    justify-content: left;
    align-items: left;
    text-align: left;
}

@keyframes movebg {
  from {
    background-position: 608px -304px;
    }

  to {
    background-position: -608px 304px;
    }
}

.projects {
  display: flex;
  align-items: left;
  background-color: #2c2c2c;
  border-radius: 10px;
  padding: 1%;
  color: white;
  margin-bottom: 5%;
}

.project-image {
  max-width: 100%;
  height: auto;
  object-fit: cover;
  border-radius: 8px;
}

.project-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: left;
  justify-content: left;
  padding: 0;
  margin-top: 5%;
  text-align: left;
  margin-left: 7%;
  margin-right: 5%;
}

.project-content h2 a {
  font-size: 2rem;
  color: white;
  text-decoration: none;
  margin: 0;
}

.project-content h2 a:hover {
  text-decoration: underline;
}

.project-author a {
  color: red;
  font-weight: bold;
  text-decoration: none;
  align-items: left;
  justify-content: left;
  text-align: left;
}

.project-author a:hover {
  text-decoration: underline;
}

.project-description,
.project-role {
  text-align: left;
  align-items: left;
  justify-content: left;
  margin-bottom: 5%;
}

.slideup {
    animation: slideup 1s ease-out forwards;
}

.centered {
    justify-content: center;
    text-align: center;
    color: white;
    margin-bottom: 5%;
}

.nimbus {
    margin-left: 2%;
    margin-bottom: 1%;
    width: 3%;
    color: white;
}