.room_types_section {
  padding: 30px 0;
}

.room_types_section .section_title {
  font-size: 23px;
  font-weight: 700;
  margin-bottom: 20px;
  color: #202020;
}

.room_types_section .common_room_card .room-card .room-info .room-footer .view-details {
  text-decoration: none;
}

.room_types_section .common_room_card .room-card .room-info .room-footer .view-details:hover {
  text-decoration: underline;
}

.room_types_section .common_room_card .room-card .room-image-wrapper .room-location {
  display: none;
}

.room_types_section .common_room_card .room-card .room-info .room-type {
  /* display: none; */
}

.room_types_section .common_room_card .room-card {
  background: #fff;
  border-radius: 10px;
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.1);
  overflow: hidden;
}

.room_types_section .common_room_card .room-image {
  object-fit: cover;
  width: 100%;
  aspect-ratio: 1/1;
}

.room_types_section .common_room_card .room-location,
.room_types_section .common_room_card .gallery-icon,
.room_types_section .common_room_card .room-description {
  display: none;
}

.room_types_section .common_room_card .room-title {
  font-size: 16px;
  font-weight: 600;
}

.room_types_section .common_room_card .view-details {
  color: #1a73e8;
  font-size: 14px;
  text-decoration: none;
}

.common_room_card {
  width: 100%;
  height: 100%;
}

.common_room_card .room-card {
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.3);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  padding: 8px;
  width: 100%;
  height: 100%;
}

.common_room_card .room-card .room-image-wrapper {
  position: relative;
  width: 100%;
  overflow: hidden;
  border-radius: 8px;
}

.common_room_card .room-card .room-image-wrapper .room-image {
  width: 100%;
  height: 180px;
  object-fit: fill;
  display: block;
  border-radius: 8px 8px 0 0;
}

.common_room_card .room-card .room-image-wrapper .room-location {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 6px 0px;
  font-size: 12px;
  font-weight: 600;
  color: #fff;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  background: transparent linear-gradient(90deg, #153b89 0%, #143984ee 45%, #0b1e4500 100%) 0% 0% no-repeat padding-box;
  border-radius: 0px 0px 8px 8px;
  opacity: 0.85;

  font-size: 14px;
  font-weight: 500;

  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.common_room_card .room-card .room-image-wrapper .gallery-icon {
  position: absolute;
  bottom: 8px;
  right: 10px;
  background: #fff;
  padding: 6px;
  border-radius: 6px;
  font-size: 14px;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.2);
  cursor: pointer;
}

.common_room_card .room-card .room-info {
  padding: 12px 15px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.common_room_card .room-card .room-info .room-title {
  font-size: 14px;
  font-weight: 600;
  margin: 0;
  color: #202020;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.room-type p {
  font-size: 14px;
  font-weight: 100;
}

.common_room_card .room-card .room-info .room-type {
  font-size: 14px;
  color: #202020;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  font-weight: 600;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.common_room_card .room-card .room-type span {
  font-weight: 100;
}

.common_room_card .room-card .room-info .room-type .dot {
  width: 6px;
  height: 6px;
  background: #f16625;
  border-radius: 50%;
  display: inline-block;
  margin: 0 8px;
}

.common_room_card .room-card .room-info .room-description {
  font-size: 14px;
  color: #202020;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.common_room_card .room-card .room-info .room-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: auto;
}

.common_room_card .room-card .room-info .room-footer .room-rating {
  display: flex;
  align-items: center;
  gap: 4px;
  color: #f16625;
  font-weight: 600;
}

.common_room_card .room-card .room-info .room-footer .room-rating .star-icon {
  color: #f16625;
}

.common_room_card .room-card .room-info .room-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 12px;
}

.common_room_card .room-card .room-info .room-footer .btn_wrapper {
  display: flex;
  align-items: center;
  gap: 12px;
}

.left-action {
  display: flex;
}

.right-action {
  display: flex;
}

.common_room_card .room-card .room-info .room-footer .view-details {
  font-size: 14px;
  color: #153b89;
  font-weight: 600;
  text-decoration: unset;
}

.common_room_card .room-card .room-info .room-footer .view-details:hover {
  text-decoration: underline;
}

.common_room_card .room-card .room-image-wrapper .gallery-icon {
  position: absolute;
  bottom: 8px;
  right: 10px;
  background: #202020;
  padding: 6px;
  border-radius: 6px;
  font-size: 14px;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.2);
  cursor: pointer;
}

.gallery-icon svg {
  color: #ffffff;
  width: 20px;
  height: 16px;
}

.room_types_section .book_btn {
  background-color: #1f2937;
  border: none;
  padding: 7px 16px;
  border-radius: 4px;
  color: #fff;
  font-size: 13px;
  cursor: pointer;

  transition: background-color 0.25s ease;
}

.room_types_section .book_btn:hover {
  background-color: #f16625;
  color: #fff;
}

.common_room_card .room-card .room-info .building_name {
  font-size: 15px;
  color: #d35115;
  font-weight: 500;
  margin-bottom: 5px;
}

.common_room_card .room-card .room-info .two_div {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}

.common_room_card .room-card .room-info .room-type {
  font-size: 14px;
  color: #202020;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  font-weight: 600;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-bottom: 5px;
}

.common_room_card .room-card .room-info .room-price-section {
  font-size: 14px;
  color: #202020;
  font-weight: 500;
  margin-bottom: 5px;
}

.common_room_card .room-card .room-info .room-description {
  font-size: 14px;
  color: #202020;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-weight: 600;
}

.common_room_card .room-card .room-info .room-title {}

.common_room_card .room-card .room-info .room-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 12px;
}

/* INPUT FIELDS */
.book_modal .banner_form input,
.book_modal .banner_form select {
  width: 100%;
  padding: 12px 14px;
  margin-bottom: 15px;
  border: 1px solid #ddd;
  border-radius: 8px;
  outline: none;
  background: #fafafa !important;
  font-size: 14px;
  transition: all 0.25s ease;
}

.book_modal .banner_form textarea {
  width: 100%;
  padding: 12px 14px;
  margin-bottom: 15px;
  border: 1px solid #ddd;
  border-radius: 8px;
  outline: none;
  background: #fafafa !important;
  font-size: 14px;
  transition: all 0.25s ease;
  height: 60px;
}

.book_modal .banner_form_holder .banner_form .form-control:focus {
  box-shadow: none !important;
  /* border-bottom: 1px solid #ccc; */
}

/* FOCUS EFFECT */
.book_modal .banner_form_holder .banner_form input:focus,
.book_modal .banner_form_holder .banner_form select:focus,
.book_modal .banner_form_holder .banner_form textarea:focus {
  border-color: #153b89;
  background: #fff !important;
  box-shadow: 0 0 0 2px rgba(21, 59, 137, 0.1);
}

/* REACT SELECT */
.react_select__control {
  border-radius: 8px !important;
  border: 1px solid #ddd !important;
  background: #fafafa !important;
  box-shadow: none !important;
  min-height: 44px !important;
  transition: all 0.25s ease;
}

.react_select__control--is-focused {
  border-color: #153b89 !important;
  box-shadow: 0 0 0 2px rgba(21, 59, 137, 0.1) !important;
  background: #fff !important;
}

/* VALUE */
.react_select__single-value {
  color: #000 !important;
  font-size: 14px !important;
}

/* PLACEHOLDER */
.react_select__placeholder {
  color: #999 !important;
}

/* DROPDOWN */
.react_select__menu {
  border-radius: 8px !important;
  overflow: hidden;
  font-size: 14px;
}

/* OPTION */
.react_select__option--is-focused {
  background: #f0f4ff !important;
}

/* ====================== Media Queries ========================= */

@media (min-width: 0px) and (max-width: 574px) {
  .common_room_card .room-card .room-info .room-title {
    font-size: 14px;
  }

  .common_room_card .room-card .room-info .room-type {
    font-size: 12px;
  }

  .common_room_card .room-card .room-info .room-description {
    font-size: 12px;
  }

  .view-btn {
    font-size: 12px;
    padding: 5px 10px;
  }

  .common_room_card .room-card .room-image-wrapper .room-image {
    height: 150px;
  }

  .room_types_section .rooms_wrapper .common_room_card {
    width: 100%;
  }
}

@media (min-width: 575px) and (max-width: 767px) {
  .common_room_card .room-card .room-info .room-title {
    font-size: 15px;
  }

  .common_room_card .room-card .room-info .room-type {
    font-size: 13px;
  }

  .common_room_card .room-card .room-info .room-description {
    font-size: 13px;
  }

  .room_types_section .rooms_wrapper {
    flex-direction: row;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .common_room_card .Common_Btn .btn_wrapper .view_btn {
    padding: 6px 10px;
  }

  .common_room_card .room-card {
    padding: 6px;
  }

  .common_room_card .room-card .room-info .room-type {
    margin: 0;
  }
}