/* ***** fonts ***** */
html {
  height: 100%;
}
@font-face {
  font-family: "baloo-bold";
  src: url("../font/Baloo_2/Baloo2-Bold.ttf");
}
@font-face {
  font-family: "baloo-medium";
  src: url("../font/Baloo_2/Baloo2-Medium.ttf");
}
@font-face {
  font-family: "baloo-regular";
  src: url("../font/Baloo_2/Baloo2-Regular.ttf");
}
@font-face {
  font-family: "handwriting";
  src: url("../font/Charm/Charm-Regular.ttf");
}
@font-face {
  font-family: "logo";
  src: url("../font/Coiny/Coiny-Regular.ttf");
}
.menu {
  padding-top: 15px;
  padding-bottom: 15px;
}
.affix {
  padding-top: 5px;
  padding-bottom: 5px;
  background-color: #fff;
  box-shadow: 0 8px 4px -6px #ddd;
  transition: 0.3s ease;
}
.menu .navbar-brand,
.menu .navbar-brand span {
  font-family: "logo";
  font-weight: bold;
  font-size: clamp(1.3rem, 100%, 1.6rem);
  letter-spacing: 2px;
  color: #fff;
}
.menu .navbar-brand,
.menu .navbar-brand span {
  font-family: "logo";
  font-weight: bold;
  font-size: clamp(1.3rem, 100%, 1.6rem);
  letter-spacing: 2px;
  color: #fff;
}
.fa-search {
  color: white;
}
.navbar {
  background-color: #95274e;
  padding-left: 2rem;
}
.menu .navbar-brand {
  background: #fff;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.menu .nav-link {
  font-size: 1.1rem;
  margin-right: 20px;
  color: #fff;
  font-family: "baloo-medium";
  position: relative;
}
.menu .nav-link:after {
  content: "";
  position: absolute;
  height: 2px;
  width: 100%;
  left: 0;
  bottom: 0;
  visibility: hidden;
  background-color: #fff;
  -webkit-transition: all 0.1s ease;
  transition: all 0.3s ease;
  -webkit-transform: scaleX(0);
  -ms-transform: scaleX(0);
  transform: scaleX(0);
}
.menu .active .nav-link:after {
  content: "";
  position: absolute;
  height: 2px;
  width: 100%;
  left: 0;
  bottom: 0;
  visibility: visible;
  background-color: #95274e;
  transform: scaleX(1);
}
.menu .nav-link:hover:after {
  visibility: visible;
  -webkit-transform: scaleX(1);
  -ms-transform: scaleX(1);
  transform: scaleX(1);
}
.menu #searchbox,
.menu #searchbox:focus {
  border: 0;
  outline: 0;
  border-bottom: 1px solid #4e2a14;
}
.menu .btn-search:focus {
  box-shadow: none;
}

/* ***** navigation - animated toggle [ref: https://codepen.io/dicson/pen/waKPgQ] ***** */
.animate-toggler {
  border: none;
  outline: none;
  background-color: transparent;
  cursor: pointer;
  width: 40px;
  height: 26px;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}
.animate-toggler i {
  background-color: #fff;
  border-radius: 2px;
  content: "";
  display: block;
  width: 100%;
  height: 4px;
}
.animate-toggler i:nth-child(1) {
  -webkit-animation: outT 0.8s backwards;
  animation: outT 0.8s backwards;
  -webkit-animation-direction: reverse;
  animation-direction: reverse;
}
.animate-toggler i:nth-child(2) {
  margin: 5px 0;
  -webkit-animation: outM 0.8s backwards;
  animation: outM 0.8s backwards;
  -webkit-animation-direction: reverse;
  animation-direction: reverse;
}
.animate-toggler i:nth-child(3) {
  -webkit-animation: outBtm 0.8s backwards;
  animation: outBtm 0.8s backwards;
  -webkit-animation-direction: reverse;
  animation-direction: reverse;
}
.animate-toggler.active i:nth-child(1) {
  -webkit-animation: inT 0.8s forwards;
  animation: inT 0.8s forwards;
}
.animate-toggler.active i:nth-child(2) {
  -webkit-animation: inM 0.8s forwards;
  animation: inM 0.8s forwards;
}
.animate-toggler.active i:nth-child(3) {
  -webkit-animation: inBtm 0.8s forwards;
  animation: inBtm 0.8s forwards;
}

@-webkit-keyframes inM {
  50% {
    -webkit-transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(45deg);
  }
}
@keyframes inM {
  50% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(45deg);
  }
}

@-webkit-keyframes outM {
  50% {
    -webkit-transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(45deg);
  }
}
@keyframes outM {
  50% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(45deg);
  }
}

@-webkit-keyframes inT {
  0% {
    -webkit-transform: translateY(0px) rotate(0deg);
  }
  50% {
    -webkit-transform: translateY(9px) rotate(0deg);
  }
  100% {
    -webkit-transform: translateY(9px) rotate(135deg);
  }
}
@keyframes inT {
  0% {
    transform: translateY(0px) rotate(0deg);
  }
  50% {
    transform: translateY(9px) rotate(0deg);
  }
  100% {
    transform: translateY(9px) rotate(135deg);
  }
}

@-webkit-keyframes outT {
  0% {
    -webkit-transform: translateY(0px) rotate(0deg);
  }
  50% {
    -webkit-transform: translateY(9px) rotate(0deg);
  }
  100% {
    -webkit-transform: translateY(9px) rotate(135deg);
  }
}
@keyframes outT {
  0% {
    transform: translateY(0px) rotate(0deg);
  }
  50% {
    transform: translateY(9px) rotate(0deg);
  }
  100% {
    transform: translateY(9px) rotate(135deg);
  }
}

@-webkit-keyframes inBtm {
  0% {
    -webkit-transform: translateY(0px) rotate(0deg);
  }
  50% {
    -webkit-transform: translateY(-9px) rotate(0deg);
  }
  100% {
    -webkit-transform: translateY(-9px) rotate(135deg);
  }
}
@keyframes inBtm {
  0% {
    transform: translateY(0px) rotate(0deg);
  }
  50% {
    transform: translateY(-9px) rotate(0deg);
  }
  100% {
    transform: translateY(-9px) rotate(135deg);
  }
}

@-webkit-keyframes outBtm {
  0% {
    -webkit-transform: translateY(0px) rotate(0deg);
  }
  50% {
    -webkit-transform: translateY(-9px) rotate(0deg);
  }
  100% {
    -webkit-transform: translateY(-9px) rotate(135deg);
  }
}
@keyframes outBtm {
  0% {
    transform: translateY(0px) rotate(0deg);
  }
  50% {
    transform: translateY(-9px) rotate(0deg);
  }
  100% {
    transform: translateY(-9px) rotate(135deg);
  }
}
/* Existing sidebar styles */
.sidebar {
  position: fixed;
  top: 0;
  right: -420px;
  width: 400px; /* Kept original width */
  height: 100vh;
  background: linear-gradient(135deg, #95274e 80%, #f62564 100%);
  color: #fff;
  box-shadow: -4px 0 24px rgba(0, 0, 0, 0.15);
  z-index: 1050;
  transition: right 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  border-top-left-radius: 24px;
  border-bottom-left-radius: 24px;
  overflow-y: auto; /* Enable scrolling for content */
  font-family: "DynaPuff", "Arial", cursive, sans-serif;
}
.sidebar.open {
  right: 0;
}
.sidebar .close-btn {
  background: none;
  border: none;
  color: #fff;
  font-size: 2.2rem;
  position: absolute;
  top: 18px;
  right: 22px;
  cursor: pointer;
  transition: color 0.2s;
  z-index: 1060; /* Higher z-index for close button */
}
.sidebar .close-btn:hover {
  color: #fff;
}
.sidebar-content {
  padding: 2.5rem 1.5rem !important; /* Adjusted for better padding */
  padding-top: 4rem !important; /* Give space for close button */
}
.sidebar h4,
.sidebar h5 {
  font-family: "Chicle", cursive;
  color: #fff;
  letter-spacing: 1px;
  text-shadow: 0 2px 8px rgba(163, 31, 52, 0.12);
}
.sidebar hr {
  border-top: 1.5px solid #fff2;
  margin: 1.5rem 0;
}
/* You can remove the old .sidebar .input-group styles if you only use the new search bar now */
/* .sidebar .input-group .form-control { ... } */
/* .sidebar .input-group .form-control:focus { ... } */
/* .sidebar .input-group-append .btn { ... } */
/* .sidebar .input-group-append .btn:hover { ... } */
.sidebar ul.list-unstyled li {
  margin-bottom: 0.7rem;
}
.sidebar ul.list-unstyled li a {
  color: #fff;
  font-size: 1.08rem;
  font-family: "DynaPuff", cursive, sans-serif;
  text-decoration: none;
  transition: color 0.2s;
  padding: 0.2rem 0.5rem;
  border-radius: 8px;
  display: inline-block;
}
.sidebar ul.list-unstyled li a:hover,
.sidebar ul.list-unstyled li a:focus {
  color: #fff;
  background: #fff1;
  text-decoration: none;
}
.sidebar-category-link i {
  color: #fff;
  margin-right: 0.5rem;
}
.sidebar-social a {
  color: #fff;
  font-size: 1.3rem;
  margin-right: 0.7rem;
  transition: color 0.2s, transform 0.2s;
  display: inline-block;
}
.sidebar-social a:hover {
  color: #fff;
  transform: scale(1.15) rotate(-8deg);
  text-decoration: none;
}
@media (max-width: 600px) {
  .sidebar {
    width: 100vw;
    right: -100vw;
    border-radius: 0;
  }
  .sidebar.open {
    right: 0;
  }
}

/* NEW SEARCH UI STYLES */
.sidebar .search-input-container {
  position: relative;
  display: flex;
  align-items: center;
  margin-bottom: 20px;
  background-color: #fff; /* White background for the whole container/input */
  border-radius: 25px; /* Pill shape */
  padding: 0 15px; /* Inner padding for input and icons */
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.sidebar .sidebar-search-input {
  flex-grow: 1; /* Allows input to take available space */
  border: none;
  background: transparent; /* No background as parent container has it */
  color: #333;
  font-size: 1rem;
  padding: 12px 0; /* Vertical padding */
  outline: none; /* Remove focus outline */
}

.sidebar .sidebar-search-input::placeholder {
  color: #999;
  font-family: Arial, sans-serif; /* Simpler font for placeholder */
}

.sidebar .sidebar-search-input:focus {
  box-shadow: none; /* Handled by container */
  border: none;
}

.sidebar .search-icon-overlay,
.sidebar .clear-search-btn {
  position: static; /* Reset absolute positioning if previously set */
  margin-left: 10px; /* Space between input text and icon/button */
  cursor: pointer;
  font-size: 1.1rem;
  color: #95274e; /* Dark red from your theme */
  transition: color 0.2s;
}

.sidebar .search-icon-overlay {
  margin-left: -20px; /* Pull search icon slightly into input for "inner" look */
  pointer-events: none; /* Make icon unclickable, click on input instead */
  color: #999; /* Lighter color for default icon */
}

.sidebar .clear-search-btn {
  color: #ccc;
  background: none;
  border: none;
  padding: 0;
  line-height: 1; /* Fix line height for single icon */
}
.sidebar .clear-search-btn:hover {
  color: #999;
}

.sidebar .filter-tabs {
  display: flex;
  gap: 10px;
  justify-content: flex-start;
  flex-wrap: wrap;
  margin-bottom: 20px;
}

.sidebar .filter-btn {
  background-color: rgba(255, 255, 255, 0.2);
  color: #fff;
  border: none;
  padding: 8px 18px;
  border-radius: 20px;
  cursor: pointer;
  font-size: 0.95rem;
  transition: background-color 0.2s, color 0.2s;
  font-family: Arial, sans-serif; /* Using Arial for clean look as in image */
  font-weight: 500;
  white-space: nowrap;
}

.sidebar .filter-btn:hover {
  background-color: rgba(255, 255, 255, 0.3);
}

.sidebar .filter-btn.active {
  background-color: #fff; /* Accent color for active tab */
  color: #95274e; /* Dark red text for active tab */
  font-weight: bold;
}

.sidebar .search-results-list {
  padding-top: 0px; /* Already part of sidebar-content padding */
  max-height: 40vh; /* Limit height to enable scrolling for results */
  overflow-y: auto;
  /* Hide scrollbar for Webkit browsers */
  -ms-overflow-style: none; /* IE and Edge */
  scrollbar-width: none; /* Firefox */
}
.sidebar .search-results-list::-webkit-scrollbar {
  display: none; /* Chrome, Safari, Opera */
}

.sidebar .search-result-item {
  display: flex;
  align-items: center;
  padding: 12px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  cursor: pointer;
  transition: background-color 0.2s;
}

.sidebar .search-result-item:last-child {
  border-bottom: none;
}

.sidebar .search-result-item:hover {
  background-color: rgba(255, 255, 255, 0.08);
}

.sidebar .result-img {
  width: 70px;
  height: 70px;
  border-radius: 8px;
  object-fit: cover;
  margin-right: 15px;
  flex-shrink: 0;
  border: 1px solid rgba(255, 255, 255, 0.15);
}

.sidebar .result-title {
  font-size: 1.1rem;
  color: #fff;
  line-height: 1.3;
  font-family: Arial, sans-serif; /* Clean sans-serif for result titles */
  font-weight: 500;
}

.sidebar .view-all-results {
  color: #fff;
  text-decoration: none;
  margin-top: 25px;
  margin-bottom: 15px;
  display: block;
  text-align: right;
  font-size: 1rem;
  font-weight: bold;
  transition: color 0.2s;
  font-family: Arial, sans-serif; /* Clean sans-serif for link */
}

.sidebar .view-all-results:hover {
  color: #f1a80e;
  text-decoration: underline;
}

.sidebar .view-all-results i {
  margin-left: 8px;
  transition: transform 0.2s;
}

.sidebar .view-all-results:hover i {
  transform: translateX(3px);
}

.sidebar .ui-divider {
  /* Custom divider for new UI sections */
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  margin: 1rem 0;
}

/* No results message */
.no-results-message {
  color: rgba(255, 255, 255, 0.7);
  text-align: center;
  padding: 20px 0;
  font-style: italic;
}
/* ***** banner ***** */
#banner {
  min-height: -webkit-fill-available;
  background-image: url("../images/background.svg");
  background-repeat: no-repeat;
  background-size: cover;
  padding: 2rem 0 2rem 0;
}
#banner h1,
#banner .text-fresh {
  margin-top: 40%;
  font-family: "baloo-bold";
  font-size: 3rem;
  color: #95274e;
  margin-bottom: 7%;
  text-transform: uppercase;
}
#banner .text-fresh {
  overflow: hidden;
  background: linear-gradient(to right, #ae303f, #b43241 50%, #95274e 50%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-size: 200% 100%;
  background-position: 100%;
  transition: background-position 275ms ease;
}
#banner h1:hover .text-fresh {
  background-position: 0 100%;
}
#banner .text-outline-white {
  color: #fff;
  -webkit-text-stroke: 1.2px #95274e;
  -moz-text-stroke: 1.2px #95274e;
  -ms-text-stroke: 1.2px #95274e;
}
@-webkit-keyframes shine {
  100% {
    left: 100%;
  }
}
@keyframes shine {
  100% {
    left: 100%;
  }
}
.navigation {
  background-color: #95274e;
  width: 100vw;
  height: 5rem;
  padding-left: 2rem;
  padding-right: 2rem;
  a {
    color: #fff;
  }
}
/* Footer background and text styling */
footer {
  background: url("../images/footer-bg.svg") no-repeat;
  background-size: cover;
  background-position: center;
  bottom: 0;
  background-color: #95274e; /* Footer background color */
  color: #fff;
  position: raelative;
  /* border-top: 3px solid #95274e; */
}

/* Title and subtitle styling */
footer h3 {
  font-family: "handwriting", sans-serif;
  letter-spacing: 1.5px;
  color: #ddd;
}

/* Horizontal divider line */
footer hr {
  border: 0.5px solid #95274e;
  width: 15%;
  margin: 30px auto;
  background-color: #95274e;
}

/* Styling for Address, Opening Hours, Company, bakers, Support */
footer h4 {
  text-transform: uppercase;
  color: #fff;
  font-weight: bold;
  font-size: 1.2em;
  letter-spacing: 1px;
  margin-top: 10px;
  margin-bottom: 20px;
}

footer p,
footer .opening-hour {
  color: #ddd;
}

footer .footer-ul {
  padding-left: 0;
  list-style: none;
}

footer .footer-ul li {
  margin-bottom: 10px;
}

footer .footer-ul a {
  color: #fff;
  text-decoration: none;
}

footer .footer-ul a:hover {
  color: #ffc008;
}

/* Social Media Icons Styling */
footer .social-media a {
  color: #fff;
  margin-right: 15px;
  font-size: 24px;
}

footer .social-media a:hover {
  color: #ffc008;
}

/* Facebook iframe styling */
footer .bread-shaped-container {
  background-color: #942f3b;
  height: 400px;
  border-radius: 15px;
  overflow: hidden;
  margin: 0 auto;
  padding: 10px 0px;
}

footer .bread-shaped-container iframe {
  width: 400px;
  height: 100%;
}

/* Footer Copyright Section */
.div-footer {
  /* background-color: #95274e; */
  color: #ccc;
  font-style: italic;
  font-size: 0.9em;
}
/* .logo-and-drpdwn{
  width: min-content;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px 0;
  margin: 0;
} */
/* Opening hours layout */

footer .opening-hour .row {
  margin-bottom: 5px;
}

footer .opening-hour .col-5 {
  font-weight: bold;
}

footer .opening-hour .col-7 {
  text-align: right;
}

/* Responsive Design */
@media (max-width: 768px) {
  footer .container-fluid {
    padding-left: 10px;
    padding-right: 10px;
  }
  /* .navbar {
    padding-left: 1rem;
  } */
  footer .col-md-4 {
    text-align: center;
  }

  footer .bread-shaped-container {
    height: 250px;
  }

  footer .btn-light {
    margin-top: 10px;
  }

  footer .social-media {
    text-align: center;
    margin-top: 20px;
  }
}
/* @media (min-width: 768px) {
    
    .nav-between {
     display: flex;
     align-items: center;
     width: 100%;
     flex-direction: column;
     justify-content: space-evenly;
   }
    
} */
@media (max-width: 991px) {
  .nav-between {
    display: flex;
    align-items: center;
    width: min-content;
    flex-direction: row;
  }
}
.nav-between {
  display: flex;
  align-items: center;
  width: min-content;
  flex-direction: row;
}
