:root {
  --primary-color: #adb5bd; 
  --primary-light-color: #dee2e6;
  --primary-dark-color: #212529;
  --secondary-color: #e4e4e4; 
  --gold-color: #443228;
  --gold-light-color: #cdc4ab;
}

* {
  box-sizing: border-box;
}
 
.slider {
  position: relative;
  width: 100%;
  height: 700px;
  overflow: visible;
}

.slides {
  display: flex;
  width: 100%;
  height: 100%;
  transition: transform 1s ease;
}

.slide {
  min-width: 100%;
  height: 100%;
  position: relative;
  background-size: cover;
  background-position: center;
}

.slide-text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.8);
  text-align: center;
}
.slide-text h2 {
  color: var(--secondary-color);
  font-size: 40px;
}
.slide-text p {
  font-size: 14px;
  color: var(--primary-light-color);
}

.arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background-color: rgba(0, 0, 0, 0.5);
  color: white;
  border: none;
  padding: 10px 20px;
  cursor: pointer;
  z-index: 10;
  font-size: 1.5rem;
}

.arrow.left {
  left: 10px;
}

.arrow.right {
  right: 10px;
}

video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.three-sixty-tour {
  background-color: transparent;
  border: 2px solid var(--gold-color);
  color: var(--secondary-color);
  position: absolute;
  top: 65%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-style: uppercase;
  padding: 10px 30px;
}
.three-sixty-tour:hover {
  background-color: var(--gold-color);
  color: var(--secondary-color);
}

/* Responsive Styles for the Slider */
@media (max-width: 768px) {
  .slider {
    height: 350px; /* Adjust slider height for smaller screens */
  }

  .slide-text {
    font-size: 1.5rem; /* Reduce text size for readability */
  }

  .arrow {
    font-size: 1.2rem; /* Adjust arrow size */
    padding: 8px 16px; /* Adjust padding */
  }

  .three-sixty-tour {
    font-size: 0.9rem; /* Reduce button font size */
    padding: 8px 20px; /* Adjust button padding */
  }
}

@media (max-width: 576px) {
  .slider {
    height: 250px; /* Further reduce slider height */
  }

  .slide-text {
    font-size: 1.2rem; /* Further reduce text size */
    padding: 0 10px; /* Add padding for text */
  }

  .arrow {
    font-size: 1rem; /* Further adjust arrow size */
    padding: 6px 12px; /* Adjust padding */
  }

  .three-sixty-tour {
    font-size: 0.8rem; /* Further reduce button font size */
    padding: 6px 16px; /* Adjust button padding */
  }
}

@media (max-width: 360px) {
  .slider {
    height: 200px; /* Minimum height for very small screens */
  }

  .slide-text {
    font-size: 1rem; /* Adjust text size for the smallest screens */
  }

  .arrow {
    font-size: 0.8rem; /* Reduce arrow size for very small screens */
    padding: 4px 8px; /* Adjust padding */
  }

  .three-sixty-tour {
    font-size: 0.7rem; /* Smallest button font size */
    padding: 4px 12px; /* Adjust padding */
  }
}


/* ..................... portfolio section ....................... */

.portfolio-section {
  display: flex;
  justify-content: center;
  padding: 0 150px;
  color: var(--gold-color);
  background-color: var(--primary-dark-color);
}
.portfolio-section div {
  background-color: var(--primary-light-color);
  text-align: center;
  margin: 0 10px;
  font-size: 15px;
}
.portfolio-section h2 {
    background-color: var(--gold-color);
    color: white;
    margin: 0;
    padding: 10px 0;
}
.portfolio-section img {
  height: 170px;
  width: 100%;
}

.events-section, .our-kitchen, .hotel {
  position: relative;
  top: -60px;
  width: 33%;
}

.paragraph {
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding: 30px 20px;
}

.paragraph p {
  font-size: 13px;
  font-weight: lighter;
  line-height: 1.5rem;
}

.paragraph button {
  border: 2px solid var(--gold-color);
  background-color: transparent;
  color: var(--gold-color);
  width: fit-content;
  padding: 10px 30px;
  margin: auto;
  border-radius: 3px;
  margin-bottom: 5px;
}

.paragraph button:hover{
  background-color: var(--secondary-color);
}

/* Responsive Styles for Portfolio Section */
@media (max-width: 992px) {
  .portfolio-section {
    padding: 0 50px; /* Reduce padding for medium-sized screens */
    flex-wrap: wrap; /* Allow content to wrap */
    justify-content: center; /* Center items */
  }

  .portfolio-section div {
    margin: 10px 5px; /* Adjust margin */
  }

  .portfolio-section h2 {
    font-size: 18px; /* Adjust heading size */
  }

  .portfolio-section img {
    height: 150px; /* Reduce image height */
  }

  .paragraph {
   gap: 10px;
   padding: 20px 20px;
  }

  .paragraph p {
    font-size: 12px; /* Reduce font size */
  }
}

@media (max-width: 768px) {
  .portfolio-section {
    padding: 0 20px; /* Further reduce padding */
  }

  .portfolio-section div {
    width: 100%; /* Make divs stack vertically */
    margin: 10px 0; /* Adjust margin */
  }

  .portfolio-section img {
    height: 120px; /* Further reduce image height */
  }

  .paragraph p {
    font-size: 11px; /* Reduce font size further */
  }

  .paragraph button {
    font-size: 12px; /* Adjust button font size */
    padding: 8px 20px; /* Adjust button padding */
  }
}

@media (max-width: 576px) {
  .portfolio-section {
    padding: 0 10px; /* Minimal padding for the smallest screens */
  }

  .portfolio-section img {
    height: 100px; /* Reduce image height for smallest screens */
  }

  .paragraph p {
    font-size: 10px; /* Minimum readable font size */
  }

  .paragraph button {
    font-size: 10px; /* Adjust button font size */
    padding: 6px 15px; /* Minimal padding */
  }
}

/* ....................... Posts Area CSS ...................... */

.posts-section {
  display: flex;
  height: 700px;
  padding: 40px 150px;
  color: var(--secondary-color);
  background-color: var(--primary-dark-color);
  font-size: 14px;
}
.posts-section h2 {
  color: var(--gold-color);
  border-bottom: 1px solid var(--gold-light-color);
  width: fit-content;
  cursor: pointer;
}

.posts-section h2:hover {
  border-bottom: 1px solid var(--gold-color);

}

.posts-left {
  height: 630px;
  display: flex;
  flex-direction: column;
  justify-content: end;
  padding: 20px;
}
.posts-left, .posts-right {
  width: 50%;
  margin: 10px;
  border-radius: 3px;
}

.top-post, .bottom-post{
  display: flex;
  background-color: var(--primary-light-color);
}

.top-post img, .top-post div {
  width: 50%;
  height: 300px;
}

.bottom-post img, .bottom-post div {
  width: 50%;
  height: 300px;
}

.post-data{
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 1px;
}

.post-data h2, .post-data p {
  padding: 0;
  margin: 0;
}

/* categories */

.categories {
  border-top: 1px solid var(--primary-light-color);
  background-color: var(--primary-dark-color);
  padding: 20px 60px;
}

.category-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  padding: 20px 0;
}

.category-button {
  display: inline-block;
  padding: 8px 16px;
  font-size: 9px;
  background-color: var(--primary-dark-color);
  color: var(--secondary-color);
  text-decoration: none;
  border: 1px solid var(--primary-light-color);
  border-radius: 3px;
  transition: 0.3s;
}

.category-button:hover {
  color: var(--gold-color);
}

/* Responsive Styles for Posts Section and Categories */

@media (max-width: 992px) {
  .posts-section {
    flex-direction: column; /* Stack posts vertically */
    height: auto; /* Allow height to adjust */
    padding: 20px 50px; /* Reduce padding for medium screens */
  }

  .posts-left, .posts-right {
    width: 100%; /* Make each section full-width */
    margin: 10px 0; /* Add margin between stacked sections */
  }

  .top-post img, .top-post div,
  .bottom-post img, .bottom-post div {
    height: 200px; /* Adjust post height */
  }

  .categories {
    padding: 20px 30px; /* Reduce padding */
  }

  .category-button {
    padding: 6px 12px; /* Adjust button size */
    font-size: 10px; /* Adjust font size */
  }
}

@media (max-width: 768px) {
  .posts-section {
    padding: 20px; /* Further reduce padding */
  }

  .posts-left, .posts-right {
    margin: 5px 0; /* Smaller margin */
  }

  .top-post img, .top-post div,
  .bottom-post img, .bottom-post div {
    height: 150px; /* Further reduce height */
  }

  .post-data h2, .post-data p {
    font-size: 12px; /* Adjust text size */
  }

  .categories {
    padding: 15px; /* Reduce padding */
  }

  .category-button {
    padding: 5px 10px; /* Further adjust button size */
    font-size: 9px; /* Smaller font size */
  }
}

@media (max-width: 576px) {
  .posts-section {
    padding: 10px; /* Minimal padding for small screens */
  }

  .top-post img, .top-post div,
  .bottom-post img, .bottom-post div {
    height: 120px; /* Smallest height for images */
  }

  .post-data h2, .post-data p {
    font-size: 10px; /* Smallest text size */
  }

  .categories {
    padding: 10px; /* Minimal padding */
  }

  .category-button {
    padding: 4px 8px; /* Minimal button size */
    font-size: 8px; /* Smallest font size */
  }

  .category-buttons {
    justify-content: center; /* Center buttons */
    gap: 3px; /* Smaller gap */
  }
}
