:root {
  /* Primary Colors */
  --raffaut-yellow: #FFB238;
  --primary-gray: #191D1D;
  --darker-gray: #131616;
  --lighter-gray: #2C2C2C;

  /* Additional Colors (if needed) */
  --accent-color: #007BFF; /* Adjust as per your design */
  --success-color: #28A745;
  --error-color: #DC3545;
}

#hero{
  background-image: url(/assets/images/raffaut_projects-hero.jpg);
}

.heroLeft{
  flex: 1;
  position: relative;
  padding: 0;
}

.heroLeft p{
  transform: rotate(-90deg);
  position: absolute;
  right: 0px;
  bottom: -130px;
  text-transform: uppercase;
  letter-spacing: 5px;
  color: var(--raffaut-yellow);
}

.herocontent{
  width: 78%;
}

#projects{
  padding: 4rem 0;
}

.tab-container {
  max-width: 1100px;
  margin: 50px auto;
}

button {
  padding: 10px 80px;
  cursor: pointer;
  background-color: transparent;
  color: #fff;
  border: none;
  border-radius: 0; /* Reset border-radius for inactive tabs */
  font-family: 'Kanit', Arial, Helvetica, sans-serif;
}

button.active {
  background-color: #FFB238;
  border-radius: 18px;
  color: var(--darker-gray);
}
.picture-container {
  display: flex;
  margin-top: 20px;
  gap: 40px;
}

.picture-container img {
  width: 100%;
  object-fit: cover;
  margin: 5px;
  border-radius: 5px;
}

.tabs{
  display: flex;
  justify-content: space-between;
  border: 1px solid #FFB238;
  width: 500px;
  height: 70px;
  margin: auto;
  border-radius: 18px;
  margin-bottom: 5rem;
}

.res-left img,
.res-right img{
  margin-bottom: 2rem;
}

#footer{
  background-color: var(--primary-gray);
}

/* Mobile Styles */
@media only screen and (max-width: 600px) {
  #hero {
    background-position: center; /* Adjust as needed */
    padding: 2rem;
  }

  .herocontentParent {
    flex-direction: column-reverse;
  }

  .herocontent {
    width: 100%;
    align-items: center;
    text-align: center;
  }

  .herocontent h1,
  .herocontent h2 {
    font-size: 1.5rem;
  }

  .herocontent p {
    width: 100%;
    margin: 1rem auto 2rem;
  }

  .heroLeft {
    display: none; /* Hide the rotated text on mobile */
  }

  .menu {
    display: none; /* Hide the menu on mobile, use a mobile-friendly menu icon instead */
  }
}

/* Tablet Styles */
@media only screen and (min-width: 601px) and (max-width: 1024px) {

  #hero{
    height: 85vh;
  }
  .herocontent {
    min-width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center; /* Center align items if needed */
    text-align: center; /* Center align text if needed */
    padding: 0;
    margin: 0;
  }

  .herocontent h1,
  .herocontent h2 {
    font-size: 1.8rem;
  }

  .herocontent p{
    width: 80%;
    margin-bottom: 0;
  }

  .heroLeft p {
    display: none;
  }

  .contactbtn{
    margin-bottom: 5rem;
  }
}
@media only screen and (max-width: 600px) {
  #projects {
    padding: 2rem 1rem; /* Compact padding for smaller screens */
  }

  .tab-container {
    width: 100%; /* Full-width container */
    margin: 1rem auto; /* Uniform margin */
  }

  .tabs {
    display: grid; /* Grid layout for buttons */
    grid-template-columns: repeat(2, 1fr); /* Two columns of buttons */
    gap: 10px; /* Space between buttons */
    width: 90%;
  }

  .tabs button {
    padding: 8px; /* Slightly smaller padding */
    font-size: 0.9rem; /* Smaller font size for buttons */
    text-align: center; /* Centered text */
  }

  .picture-container {
    flex-direction: column; /* Stack images vertically */
    gap: 10px; /* Reduced gap between images */
  }

  .picture-container img {
    width: 98%; /* Full width for images */
    height: auto; /* Maintain aspect ratio */
    border-radius: 5px; /* Rounded corners for images */
  }
}
@media only screen and (min-width: 601px) and (max-width: 1024px) {
  #projects {
    padding: 3rem 2rem; /* Increased padding for larger screens */
  }

  .tab-container {
    width: 90%; /* Use most of the screen width */
    margin: 2rem auto; /* Consistent margin */
  }

  .tabs {
    display: flex; /* Flex layout for tabs */
    flex-wrap: wrap; /* Allow tabs to wrap */
    justify-content: center; /* Center tabs */
    gap: 15px; /* Space between tabs */
  }

  .tabs button {
    padding: 10px 20px; /* Adjust padding for readability */
    font-size: 1rem; /* Larger font size for better visibility */
  }

  .picture-container {
    flex-direction: row; /* Side-by-side images */
    flex-wrap: wrap; /* Allow images to wrap */
    justify-content: center; /* Center images */
    gap: 20px; /* Space between images */
  }

  .picture-container img {
    flex: 1 1 calc(50% - 20px); /* Adjust image width with margin */
    height: auto; /* Maintain aspect ratio */
    border-radius: 5px; /* Rounded corners for aesthetics */
  }
}
