@font-face {
  font-family: "Pangram";
  src: url(./fonts/Pangram-Regular.otf) format("opentype");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "Didot";
  src: url(./fonts/Didot.ttc) format("opentype");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: "Pangram";
  src: url(./fonts/Pangram-Bold.otf) format("opentype");
  font-weight: bold;
  font-style: normal;
}

@font-face {
  font-family: "Pangram";
  src: url(./fonts/Pangram-Black.otf) format("opentype");
  font-weight: normal;
  font-style: italic;
}
html{
    scroll-behavior: smooth;
      overflow-x: hidden;
}


* {
  margin: 0;
  padding: 0;
  /* background: url("./pattern-lines.svg"); */
}

body {
  /* background: url("./pattern-lines.svg"); */
  color: #0e0d0d;
  font-family: "Pangram";
  background-color: white;
  background-size: 200px 100%;
    overflow-x: hidden;
}
/* 
.svg {
  background-image: url("./pattern-lines.svg");
  background-color: white;
  background-size: contain;
  background-repeat: repeat;
} */

nav {
  display: flex;
  position: fixed;
  top: 40px;
  left: 50%;
  transform: translateX(-50%); /* keep it centered */
  justify-content: center;
  background-color: rgba(243, 242, 241, 0.839);
  padding: 14px 30px;
  border-radius: 20px;
  width: fit-content;
  z-index: 9999;
}


nav.scrolled {
  /* background-color: rgba(243, 242, 241, 0.839); */
  background-color: rgba(255, 255, 255, 0.4); /* Semi-transparent background */
  backdrop-filter: blur(
    10px
  ); /* i used this because it adds the frosted glass effect */
  -webkit-backdrop-filter: blur(10px); /* For Safari compatibility */
}

header {
  padding-top: 40px;
  
  /* pushes nav down visually */
}


nav ul a {
  position: relative;
  text-decoration: none;
  color: black;
  z-index: 1;
  font-size: 15px;
}
nav ul {
  list-style-type: none;
  padding: 0;
  margin: 0;
  display: flex;
  gap: 42px;
  padding-left:-4px ;
}

nav span {
  position: absolute;
  top: 4px;
  left: 0px;
  width: 80px;
  height: 85%;
  background-color: #fff;
  border-radius: 20px;
  transition: 0.3s ease;
  z-index: 0;
}

.container {
  text-align: center;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  /* height: 100vh; */
  /* font-size: 40px; */
  text-align: center;
  /* background: url("./pattern-lines.svg"); */
  margin-top: 100px;
  margin-bottom: 40px;
}
.containerr {
  text-align: center;
  display: flex;
  justify-content: center;
  /* background: url("./pattern-lines.svg"); */
  align-items: center;
  text-align: center;
  margin-top: 100px;
  /* margin-bottom: -60px; */
}
#cont {
  gap: 25px;
  margin-bottom: 0px;
}
#cont p {
  background-color: #f3f2f1;
  padding: 10px;
  border-radius: 15px;
}
.large-text {
  font-size: 8rem;
  font-weight: bold;
  margin: 0;
  letter-spacing: -5px;
  position: relative;
  animation: breathe 5s ease-in-out infinite, fadeIn 3s ease-in-out;
  /* animation: fadeIn 3s ease-in-out; */
}

@keyframes fadeIn {
  0% {
    opacity: 0; /* Start with invisible */
  }
  100% {
    opacity: 1; /* End with fully visible */
  }
}
@keyframes breathe {
  0% {
    transform: translateY(0); /* Starts at the normal position */
  }
  50% {
    transform: translateY(-5px); /* Moves up a bit kidogo tu */
  }
  100% {
    transform: translateY(0); /* Returnss to the original position */
  }
}

.small-text {
  font-size: 0.8rem;
  font-weight: bold;
  position: absolute;
  animation: fadeIn 6s ease-in-out;
}

/* name tags  */
#webdev {
  bottom: -10px;
  left: 0;
}
#portfolio {
  bottom: -10px;
  right: 0;
}

/* name tags  */

/* svg draw  */
.cls-1 {
  fill: none;
  stroke: #000;
  stroke-miterlimit: 10;
  stroke-width: 4px;
  stroke-dasharray: 2000; /* Total length of the path */
  stroke-dashoffset: 2000; /* Initially hide the path */
  animation: draw 3s linear forwards; /* Draw animation */
}

/* Define the animation */
@keyframes draw {
  to {
    stroke-dashoffset: 0; /* Reveal the path */
  }
}

.custom-svg {
  width: 100%; /* Adjust size to be responsive */
  max-width: 900px; /* Set a maximum width */
  height: auto; /* Maintain aspect ratio */
  display: block;
  position: absolute;
  margin: 0 auto;
}
.second-svg {
  width: 100%; /* Adjust size to be responsive */
  max-width: 100% !important; /* Set a maximum width */
  height: auto; /* Maintain aspect ratio */
  display: block;
  position: absolute;
  margin: 0 auto;
}

.custom-svg .cls-1 {
  fill: none; /* Transparent fill */
  stroke: currentColor; /* Use currentColor to dynamically change stroke color */
  stroke-width: 1px; /* Adjust stroke thickness */
  stroke-dasharray: 4000; /* For animation, set path length */
  stroke-dashoffset: 4000; /* Initially hidden */
  transition: stroke-dashoffset 2s ease-in-out; /* Animation timing */
}

/* Dark mode */
body.dark-mode .custom-svg {
  color: white; /* Change stroke color to white in dark mode */
}

/* Light mode */
body.light-mode .custom-svg {
  color: black; /* Change stroke color to black in light mode */
  
}

.text {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100vh;
  font-size: 40px;
  font-weight: bold;
  text-align: center;
  max-width: 480px;
  margin: 0 auto;
  animation: fadeIn 2s ease-in-out;
}

.text2 {
  display: block;
  justify-content: center;
  align-items: center;
  height: 300px;
  font-size: 70px;
  margin-top: 150px !important;
  font-weight: bold;
  text-align: center;
  max-width: 480px;
  margin: 0 auto;
  gap: 10px;
  padding-top: 100px;
}
.grid-container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 30px;
  max-width: 1200px;
  margin: 50px auto;
  align-items: center;
  padding-left: 50px;
}
.grid-container img {
  filter: grayscale(100%); /* Make images black & white */
  transition: filter 0.5s ease-in-out; /* Smooth transition */
}

.grid-container img:hover {
  filter: grayscale(0%); /* Restore color on hover */
}

section img {
  width: 100%;
  height: 100%;
  object-fit: cover !important;
  max-width: 580px;
  max-height: 550px !important;
  margin: 10px;
  border-radius: 15px;
  /* margin-bottom: 84px; */
  box-shadow: 0 5px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}

.image-container {
  position: relative;
  max-width: 580px;
  /* margin: 10px; */
  margin: 0;
  object-fit: cover !important;

  padding: 0;
  border-radius: 15px;
  overflow: hidden;
}

section img:hover {
  cursor: pointer;
}
.grid-container video {
  width: 100%;
  height: auto;
  filter: grayscale(100%); /* Make video black & white */
  transition: filter 0.5s ease-in-out; /* Smooth transition */
}

.grid-container video:hover {
  filter: grayscale(0%); /* Restore color on hover */
}

.autoColor {
  animation: autoColorAnimation both;
  animation-timeline: view(70% 5%);
}
@keyframes autoColorAnimation {
  from {
    filter: grayscale(100%);
  }
  to {
    filter: grayscale(0%);
  }
}
.video-container video {
  max-width: 580px;
  margin: 10px;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 10px;
  box-shadow: 0 5px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

.text3,
.text4 {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 30px;
  /* gap: 100px !important; */
}
.text4 a {
  text-decoration: none;
  color: burlywood;
  /* margin-top: 400px !important; */
}

.text4 a:hover {
  cursor: pointer !important;
  color: rgb(137, 100, 60);
}

.text4 ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: flex;
  gap: 200px;
  margin-bottom: 40px;
}

footer a:hover {
  color: rgb(5, 5, 5);
}

.osmo-icon-svg {
  transform-origin: center;
  transition: transform 0.1s linear;
}
.coolness {
  padding: 10px;
  justify-content: center;
  align-items: center;
  min-height: 100vh;
  display: flex;
  position: relative;
  margin-bottom: -100px;
}

.coolness svg {
  transition: transform 0.2s ease;
}

/* my lingo */
.reveal-icon {
  opacity: 0;
  transform: translateY(30px);
  transition: all 0.6s ease;
}

.reveal-icon.show {
  opacity: 1;
  transform: translateY(0);
}

@keyframes reveal {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* scroll transitions  */
.autoShow {
  animation: autoShowAnimation both;
  animation-timeline: view(70% 5%);
  /* the view timeline nimelearn it has 2 parameters  one is used to specify when the animation should complete  while the onther shows where it should start*/
}
@keyframes autoShowAnimation {
  from {
    opacity: 0;
    transform: translateY(200px) scale(0.3);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

/* #autoBlur {
  animation: autoBlurAnimation linear both;
  animation-timeline: view();
}

@keyframes autoBlurAnimation {
  0% {
    filter: blur(40px);
  }
  45%,
  55% {
    filter: blur(0);
  }
  100% {
    filter: blur(40px);
  }
} */
/* .text2 i:hover {
  cursor: pointer !important;
  color: bisque;
} */
a#autoBlur {
  text-decoration: none;
  color: inherit;
  margin: 0 10px;
}

.bx:hover {
  color: burlywood !important;
}

/* //profile page  */

.text5 span {
  color: bisque;
  padding-left: 10px;
}

.text5 {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100vh;
  font-size: 50px;
  margin-left: -100px !important;

  font-weight: bold;
  text-align: center;
  white-space: nowrap; /* Prevents text wrapping */
}

#dynamicText {
  display: inline-block; /* Ensure width control applies */
  width: 200px; /* Fixed width for the changing text */
  text-align: center; /* Center the dynamic text inside its span */
  color: burlywood; /* Optional: color for dynamic text */
  transition: opacity 0.6s ease; /* Smooth transition for fade effect */
}
/* Centering the h2 */
h2 {
  text-align: center;
  font-weight: bold;
  margin-bottom: 100px;
  font-size: 2rem;
}

/* Styling the p text */
#text p {
  font-family: Pangram, sans-serif;
  font-size: 15px;
  font-weight: 900;
  line-height: 1.8; /* Increase line height for better readability */
  text-align: justify; /* Justify text */
  margin: 20px auto; /* Add space around the text */
  max-width: 800px; /* Set a max width for the paragraph */
  color: black; /* Set the text color */
  padding: 0 40px; /* Add some padding on the sides */
}
/* dark mode / */

#toggle-theme {
  background-color: transparent;
  border: none;
  cursor: pointer;
  font-size: 25px;
}

#sun-icon {
  display: block; 
}

#moon-icon {
  display: none; /* Hide moon icon by default */
  color: #fff;
}

/* Dark Mode Styles */
body.dark-mode {
  background-color: #121212;
  color: #f0f0f0;
}

body.dark-mode h2 {
  color: #f0f0f0;
}
body.dark-mode p {
  color: #f0f0f0 !important;
}

body.dark-mode svg {
  fill: white; /* Change the fill color to white for all SVGs in dark mode */
  stroke: white; /* Change the stroke color to white if needed */
}

body.dark-mode #sun-icon {
  display: none;
  animation: fadeIn 3s ease-in-out;
}

body.dark-mode #moon-icon {
  display: block; /* Show moon icon in dark mode */
  animation: fadeIn 3s ease-in-out;
}

body.dark-mode .uji {
  color: black !important; /* Change text color to black in dark mode */
}

#toggle-theme {
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

#toggle-theme {
  visibility: visible; /* Initially visible */
  opacity: 1; /* Initially fully opaque */
}

#toggle-theme.hidden {
  visibility: hidden; /* Hidden when scrolled down */
  opacity: 0; /* Fade out */
}

/* responsive  */
/* mobile devices  */

@media (max-width: 477px) {
  .uji {
    font-size: 0.8rem !important;
  }

   .grid-container {
    grid-template-columns: 1fr; /* 1 column on small screens */
    padding: 20px ;
    margin-right: 18px;
  }
  .grid-item img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 8px; /* optional: rounded corners */
}
nav ul li a{
    font-size: 12px;
}
 
nav ul{
  gap :23px
}
nav span{
  padding: 1px;
  width: 60px;
  
  height: 80%;
}

nav ul button i{
font-size:  20px;
}

  /* ✅ Responsive font sizes */

  .reveal-icon {
    font-size: 1.4rem !important;
  }

  .text2 {
    font-size: 40px !important;
    max-width: 500px !important;
  }

  .large-text {
    font-size: 3.5rem !important;
    font-weight: bold;
    margin: 0;
    letter-spacing: -5px;
    /* position: relative; */
  }
  .small-text {
    font-size: 0.5rem !important;
  }

  .text {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 60vh;
    font-size: 30px !important;
    font-weight: bold;
    text-align: center;
    max-width: 300px;
    margin: 0 auto;
    animation: fadeIn 2s ease-in-out;
  }
  .text3,
  .text4 {
    display: flex;
    justify-content: center;
    align-items: center;
    /* padding: 30px; */
    gap: -10px !important;
  }
  .text4 a {
    text-decoration: none;
    color: burlywood;
    /* margin-top: 400px !important; */
  }
  .parent-container {
    display: flex !important; /* Enable flexbox on the parent container */
    justify-content: center !important; /* Horizontally center the child */
    align-items: center !important; /* Vertically center the child */
    height: 100% !important; /* Ensure the parent container takes up space */
  }

  div.text5 {
    flex-direction: column; /* Stack in a column on smaller screens */
    text-align: center !important; /* Center align text */
    font-size: 30px !important;
  }

  .text4 a:hover {
    cursor: pointer !important;
    color: rgb(137, 100, 60);
  }

  .text4 ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    display: flex;
    gap: 20px;
    margin-bottom: 40px;
  }

  #cont {
    gap: 20px;
    margin-bottom: 0px;
  }
  #cont p {
    background-color: #f3f2f1;
    padding: 10px;
    border-radius: 15px;
    font-size: 15px;
  }

  .custom-svg2 {
    width: 100%; /* Adjust size to be responsive */
    max-width: 900px; /* Set a maximum width */
    height: auto; /* Maintain aspect ratio */
    display: block;
    position: absolute;
    margin: 0 auto;
    margin-top: 180px;
  }
  .second-svg2 {
    width: 100%; /* Adjust size to be responsive */
    max-width: 100% !important; /* Set a maximum width */
    height: auto; /* Maintain aspect ratio */
    display: block;
    position: absolute;
    margin: 0 auto;
    margin-top: -100px;
  }

  .custom-svg .cls-1 {
    fill: none; /* Transparent fill */
    stroke: currentColor; /* Use currentColor to dynamically change stroke color */
    stroke-width: 1px; /* Adjust stroke thickness */
    stroke-dasharray: 4000; /* For animation, set path length */
    stroke-dashoffset: 4000; /* Initially hidden */
    transition: stroke-dashoffset 2s ease-in-out; /* Animation timing */
  }
}

@media screen and (max-width: 799px) {
  .grid-container {
    display: block;
    max-width: 440px;
  }

  .cursor {
    display: none;
  }

  .large-text {
    font-size: 5rem;
    font-weight: bold;
    margin: 0;
    letter-spacing: -5px;
    position: relative;
  }
  .small-text {
    font-size: 0.6rem;
    font-weight: bold;
    position: absolute;
    animation: fadeIn 6s ease-in-out;
  }

  .text5 {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
    font-size: 2rem !important;
    font-weight: bold;
    text-align: center;
    white-space: nowrap; /* Prevents text wrapping */
    margin-left: -100px !important;
  }
  .custom-svg2 {
    width: 100%; /* Adjust size to be responsive */
    max-width: 900px; /* Set a maximum width */
    height: auto; /* Maintain aspect ratio */
    display: block;
    position: absolute;
    margin: 0 auto;
    margin-top: 180px;
  }
  .second-svg2 {
    width: 100%; /* Adjust size to be responsive */
    max-width: 100% !important; /* Set a maximum width */
    height: auto; /* Maintain aspect ratio */
    display: block;
    position: absolute;
    margin: 0 auto;
    margin-top: -100px;
  }

  .custom-svg .cls-1 {
    fill: none; /* Transparent fill */
    stroke: currentColor; /* Use currentColor to dynamically change stroke color */
    stroke-width: 1px; /* Adjust stroke thickness */
    stroke-dasharray: 4000; /* For animation, set path length */
    stroke-dashoffset: 4000; /* Initially hidden */
    transition: stroke-dashoffset 2s ease-in-out; /* Animation timing */
  }
}

@media (max-width: 950px) {
  .grid-container {
    display: grid;
    max-width: 700px;
  }

  .grid-container img,
  .grid-container video {
    filter: none !important; /* Remove grayscale */
    opacity: 1 !important; /* Ensure they are visible */
    transform: none !important; /* No transition movement */
    animation: none !important; /* Disable animation */
  }

  .text5 {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
    font-size: 2.5rem !important;
    font-weight: bold;
    text-align: center;
    white-space: nowrap; /* Prevents text wrapping */
    margin-left: -150px !important;
  }
  .text {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 60vh;
    font-size: 30px;
    font-weight: bold;
    text-align: center;
    max-width: 300px;
    margin: 0 auto;
    animation: fadeIn 2s ease-in-out;
  }
  .custom-svg2 {
    width: 100%; /* Adjust size to be responsive */
    max-width: 900px; /* Set a maximum width */
    height: auto; /* Maintain aspect ratio */
    display: block;
    position: absolute;
    margin: 0 auto;
    margin-top: 180px;
  }
  .second-svg2 {
    width: 100%; /* Adjust size to be responsive */
    max-width: 100% !important; /* Set a maximum width */
    height: auto; /* Maintain aspect ratio */
    display: block;
    position: absolute;
    margin: 0 auto;
    margin-top: -150px;
  }

  .custom-svg .cls-1 {
    fill: none; /* Transparent fill */
    stroke: currentColor; /* Use currentColor to dynamically change stroke color */
    stroke-width: 1px; /* Adjust stroke thickness */
    stroke-dasharray: 4000; /* For animation, set path length */
    stroke-dashoffset: 4000; /* Initially hidden */
    transition: stroke-dashoffset 2s ease-in-out; /* Animation timing */
  }
}
@media (max-width: 2980px) {
  .grid-container {
    display: grid;
    max-width: 1500px !important;
  }

  .cont {
    gap: 50px;
    margin-bottom: 0px;
  }
  .cont p {
    /* background-color: #f3f2f1; */
    padding: 10px;
    border-radius: 15px;
    font-size: 20px !important;
  }

  .text {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 60vh;
    font-size: 40px;
    font-weight: bold;
    text-align: center;
    max-width: 900px;
    margin: 0 auto;
    animation: fadeIn 2s ease-in-out;
  }
  .custom-svg2 {
    width: 100%; /* Adjust size to be responsive */
    max-width: 900px; /* Set a maximum width */
    height: auto; /* Maintain aspect ratio */
    display: block;
    position: absolute;
    margin: 0 auto;
    /* margin-top: -1900px !important; */
  }
  .second-svg2 {
    width: 100%; /* Adjust size to be responsive */
    max-width: 100% !important; /* Set a maximum width */
    height: 120px; /* Maintain aspect ratio */
    display: block;
    position: absolute;
    margin: 0 auto;
    /* margin-top: -150px; */
  }

  .custom-svg .cls-1 {
    fill: none; /* Transparent fill */
    stroke: currentColor; /* Use currentColor to dynamically change stroke color */
    stroke-width: 1px; /* Adjust stroke thickness */
    stroke-dasharray: 4000; /* For animation, set path length */
    stroke-dashoffset: 4000; /* Initially hidden */
    transition: stroke-dashoffset 2s ease-in-out; /* Animation timing */
  }
}
@media (min-width: 1900px) {
  .custom-svg {
    display: none; /* Hides the SVG on 1020px and above */
  }

  .large-text {
    font-size: 10rem;
    font-weight: bold;
    margin: 0;
    letter-spacing: -5px;
    position: relative;
  }
  .small-text {
    font-size: 0.9rem;
    font-weight: bold;
    position: absolute;
    animation: fadeIn 6s ease-in-out;
  }
}
/* project page  */

#cont {
  /* grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); */
  gap: 40px;
}
#cont i {
  font-size: 40px;
}
.description {
  max-width: 800px; /* Limits the width for better readability */
  margin: 40px auto; /* Centers the section */
  padding: 20px;
  /* background-color: #f8f8f8; Light gray background */
  border-radius: 8px; /* Rounded corners */
  /* box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1); Subtle shadow for depth */
}

.description h2 {
  font-size: 24px;
  color: #89643c; /* Wine red color */
  margin-bottom: 50px;
  margin-top: 50px;
}

.description p {
  font-size: 16px;
  line-height: 1.6;
  color: #333; /* Dark gray for good readability */
}

.btn-container {
  margin-top: 20px;
  display: flex;
  justify-content: center; /* Centers the buttons horizontally */
  gap: 15px;
}

.btn {
  display: inline-block;
  padding: 10px 20px;
  text-decoration: none;
  font-size: 16px;
  font-weight: bold;
  border-radius: 6px;
  transition: 0.3s ease-in-out;
  text-align: center;
}

.github-btn {
  background-color: #010101; /* GitHub Dark Gray */
  color: #ffffff;
}

.github-btn:hover {
  background-color: #89643c;
}

.live-btn {
  background-color: #89643c; /* Wine Red */
  color: #ffffff;
}

.live-btn:hover {
  background-color: #101010;
}

/* cursor  */

.cursor {
  position: fixed;
  height: 10px;
  width: 10px;
  z-index: 111111111;
  border-radius: 100%;
  background-color: #fff;
  margin-left: -10px;
  margin-top: -11px;
  backdrop-filter: grayscale(1);
  mix-blend-mode: difference;
  pointer-events: none;
  transition: transform 0.2s ease-in-out; /* Smooth animation */
}

#projects {
  height: 30vh;
}
.text h4 {
  font-size: 25px;
}

/* profile  */
/* * {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
} */

.container-profile {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 90vw;
  height: 100vh;
  margin-left: 20px;
  /* padding: 5vw; */
}

.main-image {
  width: 40%; /* Takes about 3/4 of the screen */
  height: auto;
  object-fit: cover;
  border-radius: 10px; /* Optional: for a smooth look */
}

.maneno {
  width: 40%; /* Restricts text width */
  font-size: 1.2rem;
  font-weight: bold;
  line-height: 1.5;
  color: #333;
  text-align: left; /* Ensures left alignment */
  /* background-color: #f5f5f5; Optional: adds subtle background */
  padding: 20px;
  border-radius: 5px;
}

.maneno h2 {
  font-size: 1.8rem;
  margin-bottom: 10px;
  color: #222;
  word-spacing: 3px; /* Adjust spacing for the name */
}

.maneno p {
  line-height: 1.8; /* Space between lines */
  text-transform: lowercase;

  word-spacing: 5px; /* Space between words */
}

/* flexbox for the image of me  */

@media (max-width: 1024px) {
  /* iPads and smaller */
  .container-profile {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  .main-image,
  .maneno {
    width: 100%;
    max-width: 90%;
  }
  .uji {
    display: block;
    margin: 10px auto; /* Centers the button */
    padding: 10px 15px;
    border: none;
    cursor: pointer;
    font-size: 16px;
    text-align: center;
  }
}

/* ✅ Responsive font sizes @media (max-width: 768px) {
  .reveal-icon {
    font-size: 1.2rem;
  }
}

@media (max-width: 480px) {
  .reveal-icon {
    font-size: 0.3rem;
  }
}
@media (max-width: 360px) {
  .reveal-icon {
    font-size: 0.2rem;
  }
} */



footer {
  position: relative;
  padding: 40px 0;
  min-height: 300px;
}

footer::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 1600 800' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4,425.484C4,425.484,26.279,402.596,32.619,387.879C39.601,371.67,41.598,352.316,41.919,331.313C42.32,305.044,36.984,269.804,30.077,242.424C23.817,217.606,4,173.516,4,173.516' stroke='%2371717a' stroke-width='2' fill='none' stroke-linecap='round' stroke-miterlimit='4'/%3E%3Cpath d='M1596,624.688C1596,624.688,1570.064,613.003,1562.121,606.061C1556.392,601.055,1550.556,595.544,1550.161,589.899C1549.765,584.24,1554.147,576.225,1559.799,572.143C1567.425,566.636,1596,565.652,1596,565.652' stroke='%2371717a' stroke-width='2' fill='none' stroke-linecap='round' stroke-miterlimit='4'/%3E%3Cpath d='M4,472.766C4,472.766,35.493,461.337,49.122,452.525C62.644,443.783,76.255,432.667,85.519,420.202C94.379,408.28,100.228,394.231,104.228,379.798C108.415,364.693,109.68,348.62,109.442,331.313C109.166,311.296,105.792,287.231,100.686,266.667C95.778,246.902,88.402,227.852,79.9,210.101C71.663,192.903,62.473,177.193,50.76,161.616C38.092,144.77,5.739,113.131,5.739,113.131' stroke='%2371717a' stroke-width='2' fill='none' stroke-linecap='round' stroke-miterlimit='4'/%3E%3Cpath d='M1596,672.167C1596,672.167,1514.36,638.971,1488.959,622.222C1472.682,611.489,1461.113,601.718,1452.792,589.899C1445.735,579.876,1438.881,567.394,1439.68,557.576C1440.401,548.717,1447.241,539.51,1454.47,533.333C1462.572,526.412,1472.907,522.798,1487.437,519.741C1512.744,514.415,1595.58,517.172,1595.58,517.172' stroke='%2371717a' stroke-width='2' fill='none' stroke-linecap='round' stroke-miterlimit='4'/%3E%3Cpath d='M4,504.264C4,504.264,57.955,490.938,80.402,480.098C100.426,470.429,119.201,458.987,133.264,444.444C146.585,430.668,156.488,414.544,163.65,395.96C171.788,374.844,176.51,346.767,176.575,323.232C176.637,301.055,172.521,278.865,165.456,258.586C158.453,238.483,147.534,220.826,134.548,202.02C119.623,180.407,99.84,157.292,79.141,137.374C57.735,116.774,7.767,80.808,7.767,80.808' stroke='%2371717a' stroke-width='2' fill='none' stroke-linecap='round' stroke-miterlimit='4'/%3E%3Cpath d='M1596,703.266C1596,703.266,1539.243,683.481,1511.558,670.289C1482.884,656.626,1451.293,639.675,1427.023,622.222C1406.037,607.13,1385.161,590.502,1372.832,573.737C1363.2,560.638,1354.07,545.966,1354.438,533.333C1354.772,521.871,1362.465,509.139,1371.493,501.01C1381.726,491.797,1397.642,487.779,1415.075,483.562C1439.057,477.761,1473.7,475.411,1503.518,475.236C1533.993,475.057,1596,482.848,1596,482.848' stroke='%2371717a' stroke-width='2' fill='none' stroke-linecap='round' stroke-miterlimit='4'/%3E%3Cpath d='M1596,235.299C1596,235.299,1574.014,219.268,1567.927,210.101C1562.907,202.542,1559.701,194.548,1559.54,185.859C1559.355,175.886,1563.737,163.433,1569.396,153.535C1575.501,142.857,1596,124.56,1596,124.56' stroke='%2371717a' stroke-width='2' fill='none' stroke-linecap='round' stroke-miterlimit='4'/%3E%3Cpath d='M4,531.776C4,531.776,81.114,517.531,112.563,504.212C139.647,492.741,163.918,479.014,183.27,460.606C202.078,442.715,216.062,420.774,227.744,395.96C240.986,367.832,254.991,325.808,255.356,298.99C255.613,280.096,250.857,265.815,242.966,250.505C234.079,233.263,219.308,219.481,201.995,202.02C177.803,177.621,140.646,145.79,108.005,121.212C75.947,97.074,8.04,55.621,8.04,55.621' stroke='%2371717a' stroke-width='2' fill='none' stroke-linecap='round' stroke-miterlimit='4'/%3E%3Cpath d='M698.7,266.667C703.402,275.947,717.114,282.393,734.486,290.909C771.059,308.838,859.667,337.506,916.583,350.48C964.867,361.487,1023.546,369.464,1053.266,368.64C1067.747,368.239,1076.833,367.668,1085.427,362.538C1093.628,357.643,1102.943,348.179,1104.22,339.394C1105.604,329.876,1097.841,316.314,1090.812,307.071C1083.358,297.268,1074.553,290.91,1059.814,282.828C1032.53,267.867,977.026,248.117,932.663,237.932C886.56,227.348,824.983,221.352,787.94,221.667C764.815,221.864,747.462,224.081,731.658,228.963C719.058,232.855,704.355,237.715,699.497,245.312C695.759,251.158,695.393,260.141,698.7,266.667' stroke='%2371717a' stroke-width='2' fill='none' stroke-linecap='round' stroke-miterlimit='4'/%3E%3Cpath d='M1596,730.621C1596,730.621,1505.109,695.548,1463.317,674.238C1423.277,653.821,1382.915,631.087,1349.904,606.061C1320.358,583.661,1289.555,557.929,1272.786,533.333C1260.068,514.681,1248.09,491.77,1250.053,476.768C1251.516,465.582,1259.973,456.206,1270.352,449.636C1284.796,440.492,1308.788,439.348,1334.673,436.58C1373.113,432.47,1433.821,432.555,1479.397,434.732C1520.425,436.692,1596,447.401,1596,447.401' stroke='%2371717a' stroke-width='2' fill='none' stroke-linecap='round' stroke-miterlimit='4'/%3E%3Cpath d='M1596,292.054C1596,292.054,1529.345,264.961,1511.558,251.022C1501.14,242.859,1495.411,235.004,1490.965,226.263C1487.048,218.561,1485.061,210.125,1484.846,202.02C1484.631,193.963,1486.303,186.12,1489.611,177.778C1493.724,167.408,1499.364,157.153,1509.919,145.455C1527.776,125.663,1596,78.147,1596,78.147' stroke='%2371717a' stroke-width='2' fill='none' stroke-linecap='round' stroke-miterlimit='4'/%3E%3Cpath d='M4,558.807C4,558.807,80.466,548.502,112.563,539.138C139.583,531.255,162.535,522.542,184.925,509.519C207.466,496.407,226.91,481.357,247.285,460.606C272.701,434.721,299.732,386.841,321.608,362.193C336.319,345.618,346.91,334.001,361.809,323.534C376.443,313.253,392.288,304.229,410.05,299.695C429.478,294.736,445.316,294.579,474.372,297.065C537.541,302.469,674.627,335.521,771.859,360.957C867.531,385.986,988.757,421.298,1053.266,448.065C1089.111,462.938,1100.705,470.723,1133.668,490.582C1191.18,525.232,1284.032,601.466,1362.48,646.465C1438.287,689.949,1596,757.414,1596,757.414' stroke='%2371717a' stroke-width='2' fill='none' stroke-linecap='round' stroke-miterlimit='4'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  /* background-size: cover; */
  background-position: center;
  opacity: 0.7;
  z-index: 0;
  pointer-events: none;
}

footer .coolness,
footer .text3,
footer .text4 {
  position: relative;
  z-index: 1;
}

body.dark-mode footer::before {
  opacity: 0.25;
  filter: invert(1);
}