/* General Styling */
body {
  font-family: Arial, sans-serif;
}

.search-section {
  background-color: #f0f9f0;
}

/* .btn-success {
  background-color: #28a745;
  border: none;
}

.btn-success:hover {
  background-color: #218838;
}

.navbar.bg-success {
  background-color: #28a745 !important;
}

footer.bg-success {
  background-color: #218838 !important;
} */

footer a {
  color: #e9ffe9;
}

footer a:hover {
  color: #fff;
}

.ribbon-wrapper {
  height: 70px;
  overflow: hidden;
  position: absolute;
  /* right: -2px; */
  left: -2px;
  top: -2px;
  width: 70px;
  z-index: 10;
}

.ribbon-wrapper.ribbon-lg {
  height: 120px;
  width: 120px;
}

.ribbon-wrapper.ribbon-lg .ribbon {
  /* right: 0; */
  left: 0;
  top: 26px;
  width: 160px;
}

.ribbon-wrapper.ribbon-xl {
  left: -4px;
  top: -4px;
  height: 180px;
  width: 180px;
}

.ribbon-wrapper.ribbon-xl .ribbon {
  /* right: 4px; */
  left: -52px;
  top: 47px;
  width: 240px;
}

.ribbon-wrapper .ribbon {
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
  font-size: 0.8rem;
  line-height: 100%;
  padding: 0.375rem 0;
  position: relative;
  /* right: -2px; */
  left: -20px;
  text-align: center;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.4);
  text-transform: uppercase;
  top: 10px;
  /* -webkit-transform: rotate(45deg);
  transform: rotate(45deg); */
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  width: 90px;
}

.ribbon-wrapper .ribbon::before, .ribbon-wrapper .ribbon::after {
  border-left: 3px solid transparent;
  border-right: 3px solid transparent;
  border-top: 3px solid #9e9e9e;
  bottom: -3px;
  content: "";
  position: absolute;
}

.ribbon-wrapper .ribbon::before {
  left: 0;
}

.ribbon-wrapper .ribbon::after {
  right: 0;
}

.text-xs {
  font-size: 0.75rem !important;
}

.text-sm {
  font-size: 0.875rem !important;
}

.text-md {
  font-size: 1rem !important;
}

.text-lg {
  font-size: 1.25rem !important;
}

.text-xl {
  font-size: 2rem !important;
}

.text-yellow {
  /* color: #fbbc04 !important; */
  color: #ffc107 !important;
}

/* .text-navy {
  color: #004090 !important;
}

.text-bg-navy {
  background-color: #004090 !important;
  color: white;
} */

.masonry-grid .grid-item .img-wrapper{
  overflow: hidden;
}
.masonry-grid .grid-item img{
  transition: .5s ease-in-out;
}
.masonry-grid .grid-item:hover img {
  transform: scale(1.1);
}

.stretched-link{
  z-index: 11;
}

.tooltip {
  position: fixed !important;
}

/*
 * Cart
 */
 #cartToggleBtn, #filterToggleBtn {
  top: 75%;
  right: 0;
  transform: translateY(-50%);
  border-top-left-radius: 15px;
  border-bottom-left-radius: 15px;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  padding: 12px 16px;
  z-index: 1050;
}
#cartCount {
  font-size: 0.8rem;
}

/*
 * Card
 */
#roomsContainer .card {
  position: relative;
  width: 100%;
}

#roomsContainer .img-wrapper {
  position: relative;
  width: 100%;
  padding-top: 56.25%; /* 16:9 Aspect Ratio */
  overflow: hidden;
  background-color: #f5f5f5; /* Placeholder background */
}

#roomsContainer .img-wrapper img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform 0.3s ease;
}

#roomsContainer .card:hover .img-scale img {
  transform: scale(1.1);
}

.qty-input {
  width: 41px;
  min-width: 41px;
}

.meal-plan {
  width: 55px;
  min-width: 55px;
}

.promo-info-wrap {
  position: relative;
  z-index: 5;
  line-height: 1;
  vertical-align: middle;
  cursor: help;
}

.promo-info {
  pointer-events: none;
}

.tooltip {
  z-index: 4000;
}

/*
 * Select
 */
.select2-container--bootstrap-5 .select2-selection {
    height: calc(3.5rem + 2px) !important; /* Match Bootstrap input height */
    padding-top: 1.5rem; /* Adjust padding for floating label */
    border-radius: 0.375rem;
}
.select2-container--bootstrap-5 .select2-selection__arrow {
    top: 50%;
    transform: translateY(-50%);
}
.select2-container--bootstrap-5 .select2-selection__rendered {
    margin-top: 20px;
    /* padding-left: 0.75rem;
    Match Bootstrap input padding */
}

/* .meal-plan .select2-container--bootstrap-5 .select2-selection--single {
  height: calc(1.25em + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
  font-size: 0.875rem;
}
.meal-plan .select2-container--bootstrap-5 .select2-selection--single .select2-selection__rendered {
  line-height: 1.25rem;
}
.meal-plan .select2-container--bootstrap-5 .select2-selection--single .select2-selection__arrow {
  display: none;
} */