/* ----------------------------------------
   About Me Section Styles
---------------------------------------- */

/* Title Styling */
#about .title {
  position: absolute;
  top: -3em; /* Overlap the section below */
  left: 50%;
  transform: translateX(-50%);
  text-align: center;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: 0.25em;
  font-size: 1em;
  background: inherit; /* Match section background */
  color: #000; /* Ensure readability */
  z-index: 10;
}

/* Decorative Elements for the Title */
#about .title:before,
#about .title:after {
  content: "";
  position: absolute;
  bottom: -10px;
  width: 10px;
  height: 10px;
  background: inherit; /* Match section background */
  transform: rotate(45deg);
  z-index: -1;
}

#about .title:before {
  left: -5px;
}

#about .title:after {
  right: -5px;
}

/* About Me Content Wrapper */
#about .container {
  position: relative; /* Needed for the absolute positioning of the title */
  display: flex; /* Enable flexbox */
  flex-wrap: nowrap; /* Prevent wrapping by default */
  justify-content: space-between; /* Space out elements horizontally */
  align-items: center; /* Align items vertically */
  gap: 0em; /* Space between image and text */
  padding-bottom: 2em;
  background: inherit; /* Section background */
}

/* Image Container */
#about .image-container {
  flex: 1 1 50%; /* Take up 50% of the width */
  text-align: center;
}

#about .image-container img {
  width: 100%;
  height: auto;
  border-radius: 8px; /* Optional: Rounded corners */
}

/* Text Content */
#about .text-content {
  flex: 1 1 50%; /* Take up 50% of the width */
  text-align: left;
}

#about .text-content h2 {
  font-size: 2em;
  margin-bottom: 0.5em;
  color: #e97770;
  text-align: center;
}

#about .text-content p {
  line-height: 1.6;
  font-size: 1.1em;
  color: #000;
  text-indent: 1em;
}

/* Grid Container for 2x2 Images */
#about .grid-container {
  display: grid;
  grid-template-columns: repeat(2, 1fr); /* 2 columns */
  gap: 1em; /* Space between images */
  margin-top: 2em; /* Add space above the grid */
}

#about .grid-container img {
  width: 100%; /* Ensure images fill their grid cells */
  height: auto; /* Maintain aspect ratio */
  border-radius: 8px; /* Optional: Rounded corners */
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Optional: Subtle shadow */
}

/* Responsive Adjustments */
@media screen and (max-width: 768px) {
  #about .grid-container {
    grid-template-columns: 1fr; /* Single column for smaller screens */
  }
}

/* Responsive Adjustments */

/* Screens 426px and smaller (Includes 425px) */
@media screen and (max-width: 426px) {
  #about .container {
    flex-direction: column; /* Stack the image and text vertically */
    padding: 0em 1em; /* Adjust padding for smaller screens */
  }

  #about .image-container img {
    width: 100%; /* Ensure the image takes up the full width */
    border-radius: 6px; /* Slightly round the corners */
  }

  #about .text-content h2 {
    font-size: 1.5em; /* Scale down heading size */
    text-align: center; /* Center-align the heading for smaller screens */
  }

  #about .text-content p {
    font-size: 1em; /* Reduce font size for paragraphs */
    text-align: justify; /* Improve readability on narrow screens */
    padding-left: 0; /* Remove left padding */
  }

  #about .title {
    font-size: 0.7em; /* Smaller font size for the title */
  }
}

/* Screens between 427px and 768px */
@media screen and (min-width: 427px) and (max-width: 900px) {
  #about .container {
    flex-direction: column; /* Stack elements vertically */
    padding: 0em 1em; /* Adjust padding */
  }

  #about .image-container,
  #about .text-content {
    max-width: 100%; /* Full width */
  }

  #about .text-content {
    margin-top: 2em; /* Add spacing between image and text */
    padding-left: 0; /* Remove padding when stacked vertically */
  }

  #about .title {
    font-size: 0.9em;
    top: -2.5em; /* Adjust position */
  }
}

/* Screens between 427px and 768px */
@media screen and (min-width: 900px) and (max-width: 1367px) {
  #about .title {
    font-size: 1em;
    top: -3em;
  }

  #about .text-content h2 {
    font-size: 2.5em;
  }

  #about .text-content p {
    font-size: 1.2em;
  }

  #about .image-container img {
    width: 90%; /* Slightly larger image */
  }
}

/* Screens between 1367px and 1439px */
@media screen and (min-width: 1367px) and (max-width: 1439px) {
  #about .title {
    font-size: 1.2em;
    top: -3em;
  }

  #about .text-content h2 {
    font-size: 2.5em;
  }

  #about .text-content p {
    font-size: 1.2em;
  }

  #about .image-container img {
    width: 90%; /* Slightly larger image */
  }
}

/* Screens between 1440px and 2559px */
@media screen and (min-width: 1440px) and (max-width: 2559px) {
  .container {
    max-width: 100%;
    /* padding-left: 20px; */
  }

  #about .title {
    font-size: 1.7em;
    top: -3em;
  }

  #about .text-content h2 {
    font-size: 3em;
    padding-left: 20px;
  }

  #about .text-content p {
    font-size: 1.3em;
    padding-left: 20px;
  }

  #about .image-container img {
    width: 95%; /* Increase image size */
  }
}

/* Screens 2560px and above */
@media screen and (min-width: 2560px) {
  .container {
    max-width: 100%;
  }

  #about .container {
    gap: 3em; /* Larger spacing between image and text */
  }

  #about .image-container img {
    width: 90%; /* Significantly increase image size */
    border-radius: 16px; /* Slightly more rounded corners */
  }

  #about .text-content {
    padding-left: 2em; /* Extra padding for better balance */
  }

  #about .text-content h2 {
    font-size: 5em; /* Scale up heading */
    line-height: 1.2; /* Maintain proportional spacing */
  }

  #about .text-content p {
    font-size: 2em; /* Larger paragraph text */
    line-height: 2; /* Increase line spacing for readability */
    text-align: justify; /* Balanced alignment for wide screens */
  }

  #about .title {
    font-size: 2.5em; /* Prominent title size */
    top: -3em; /* Adjust position for proper overlap */
  }
}
