/* Reset and Base Styles */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: 'Open Sans', sans-serif;
  color: #333;
  /* overflow-x: hidden; */
}

.container-fluid, .content-container {
  overflow: hidden; /* Hide anything that overflows */
  position: relative; /* Required if you have absolute positioning */
}
/* .container-fluid {
  padding-right: 0 !important;
  padding-left: 0 !important;
} */

/*-----------------------------------------------------------------------------------*/
/*	DIVIDERS
/*-----------------------------------------------------------------------------------*/
.divide0 { width: 100%; height: 0px; }
.divide2 { width: 100%; height: 2px; }
.divide3 { width: 100%; height: 3px; }
.divide5 { width: 100%; height: 5px; }
.divide10 { width: 100%; height: 10px; }
.divide15 { width: 100%; height: 15px; }
.divide20 { width: 100%; height: 20px; }
.divide25 { width: 100%; height: 25px; }
.divide30 { width: 100%; height: 30px; }
.divide35 { width: 100%; height: 35px; }
.divide40 { width: 100%; height: 40px; }
.divide45 { width: 100%; height: 40px; }
.divide50 { width: 100%; height: 50px; }
.divide55 { width: 100%; height: 55px; }
.divide60 { width: 100%; height: 60px; }
.divide65 { width: 100%; height: 65px; }
.divide70 { width: 100%; height: 70px; }
.divide75 { width: 100%; height: 75px; }
.divide80 { width: 100%; height: 80px; }
.divide85 { width: 100%; height: 85px; }


/* Initial Topbar (Contact Info) */
.initial-topbar {
  background: #1a3c5e;
  color: white;
  padding: 20px 0;
  position: relative;
  width: 100%;
  z-index: 1000;
}

.initial-topbar .row {
  padding: 0 15px;
  margin: 0 auto;
  max-width: 1140px;
}

.initial-topbar .topbar-content {
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
  height: 100%;
}

.initial-topbar .contact-info {
  display: flex;
  gap: 30px;
  align-items: center;
  pointer-events: auto;
  /* Ensure container allows pointer events */
}

.initial-topbar .topbar-link {
  margin-bottom: 10px;
}

.initial-topbar .topbar-link a {
  color: white !important;
  /* Ensure default color matches footer */
  text-decoration: none;
  font-weight: 600;
  font-size: 16px;
  transition: color 0.3s ease;
  /* Smooth transition for color */
  display: flex;
  align-items: center;
  pointer-events: auto;
  /* Ensure links are interactive */
  position: relative;
  /* Ensure z-index applies */
  z-index: 1001;
  /* Above both topbars' waves */
}

.initial-topbar .topbar-link a:hover {
  color: #b7a5a1 !important;
  /* Matches footer hover color */
}

.initial-topbar .topbar-link i {
  margin-right: 8px;
  color: white !important;
  /* Ensure default icon color */
  transition: color 0.3s ease;
  /* Smooth icon transition */
}

.initial-topbar .topbar-link a:hover i {
  color: #b7a5a1 !important;
  /* Icon matches text on hover */
}

.sticky-topbar .extra-logo-row {
  display: flex;
  justify-content: center;
  padding: 10px 0;
  /* Space above and below logo */
}

.sticky-topbar .extra-logo {
  max-width: 200px;
  height: auto;
  display: block;
  margin: 0 auto;
  /* Center horizontally */
}

/* Wave for Initial Topbar (Bottom) */
.initial-topbar::after {
  content: "";
  position: absolute;
  bottom: -59px;
  left: 0;
  width: -webkit-fill-available;
  height: 60px;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  z-index: 0;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 1400 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 25L11.2 30.2C22.3 35.3 44.7 45.7 66.8 47C89 48.3 111 40.7 133.2 36.7C155.3 32.7 177.7 32.3 200 36.2C222.3 40 244.7 48 266.8 49C289 50 311 44 333.2 45.8C355.3 47.7 377.7 57.3 400 60.7C422.3 64 444.7 61 466.8 56.8C489 52.7 511 47.3 533.2 42.5C555.3 37.7 577.7 33.3 600 33.3C622.3 33.3 644.7 37.7 666.8 40.7C689 43.7 711 45.3 733.2 47.5C755.3 49.7 777.7 52.3 800 49.7C822.3 47 844.7 39 866.8 40.8C889 42.7 911 54.3 933.2 56C955.3 57.7 977.7 49.3 1000 48C1022.3 46.7 1044.7 52.3 1066.8 51.5C1089 50.7 1111 43.3 1133.2 41.7C1155.3 40 1177.7 44 1200 42.3C1222.3 40.7 1244.7 33.3 1266.8 35.2C1289 37 1311 48 1333.2 50.2C1355.3 52.3 1377.7 45.7 1388.8 42.3L1400 39L1400 0L0 0Z' fill='%231a3c5e' stroke-linecap='round' stroke-linejoin='miter'/%3E%3C/svg%3E");
}

/* Sticky Topbar (Owl Logo and Menu Items) */
.sticky-topbar {
  background: #1a3c5e;
  color: white;
  padding: 20px 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 999;
  opacity: 0;
  transform: translateY(-100%);
}

/* Wave for Sticky Topbar (Bottom) */
.sticky-topbar::after {
  content: "";
  position: absolute;
  bottom: -59px;
  /* left: -10px; */
  width: -webkit-fill-available;
  height: 60px;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  z-index: 0;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 1400 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 25L11.2 30.2C22.3 35.3 44.7 45.7 66.8 47C89 48.3 111 40.7 133.2 36.7C155.3 32.7 177.7 32.3 200 36.2C222.3 40 244.7 48 266.8 49C289 50 311 44 333.2 45.8C355.3 47.7 377.7 57.3 400 60.7C422.3 64 444.7 61 466.8 56.8C489 52.7 511 47.3 533.2 42.5C555.3 37.7 577.7 33.3 600 33.3C622.3 33.3 644.7 37.7 666.8 40.7C689 43.7 711 45.3 733.2 47.5C755.3 49.7 777.7 52.3 800 49.7C822.3 47 844.7 39 866.8 40.8C889 42.7 911 54.3 933.2 56C955.3 57.7 977.7 49.3 1000 48C1022.3 46.7 1044.7 52.3 1066.8 51.5C1089 50.7 1111 43.3 1133.2 41.7C1155.3 40 1177.7 44 1200 42.3C1222.3 40.7 1244.7 33.3 1266.8 35.2C1289 37 1311 48 1333.2 50.2C1355.3 52.3 1377.7 45.7 1388.8 42.3L1400 39L1400 0L0 0Z' fill='%231a3c5e' stroke-linecap='round' stroke-linejoin='miter'/%3E%3C/svg%3E");
    overflow: hidden;
}

.sticky-topbar .row {
  padding: 0;
  margin: 0;
  max-width: 100%;
  position: relative;
  z-index: 1;
}

.sticky-topbar.visible {
  animation: slideIn 0.5s ease forwards;
}

.sticky-topbar.hidden {
  animation: slideOut 0.5s ease forwards;
}

@keyframes slideIn {
  0% {
    opacity: 0;
    transform: translateY(-100%);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes slideOut {
  0% {
    opacity: 1;
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    transform: translateY(-100%);
  }
}

.sticky-topbar .owl-logo img {
  max-height: 142px;
  width: auto;
  left: 56px;
  top: 20px;
  position: absolute;
}

.sticky-topbar .topbar-content {
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
  /* height: 100%; */
  height: 110px;


}

/* Hamburger Menu for Mobile */
.hamburger {
  display: none;
  font-size: 30px;
  color: white;
  cursor: pointer;
  z-index: 2;
  transition: color 0.3s ease, transform 0.3s ease;
}

/* Hamburger Animation When Open */
.hamburger.active {
  transform: scale(1.2);
  transition: transform 0.4s ease, opacity 0.4s ease;
}

/* Menu Items in Sticky Topbar */
.sticky-topbar .menu-items {
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 40px;
  padding-right: 50px;


}

.sticky-topbar .menu-items.active {
  transform: translateY(0);
}

.sticky-topbar .menu-items.active .menu-item {
  opacity: 1;
  transform: translateY(0);
  text-align: center;
}

/* Staggered animation for each menu item */
.sticky-topbar .menu-items.active .menu-item:nth-child(1) {
  transition-delay: 0.1s;
}

.sticky-topbar .menu-items.active .menu-item:nth-child(2) {
  transition-delay: 0.2s;
}

.sticky-topbar .menu-items.active .menu-item:nth-child(3) {
  transition-delay: 0.3s;
}

.sticky-topbar .menu-items.active .menu-item:nth-child(4) {
  transition-delay: 0.4s;
}

.sticky-topbar .menu-item a {
  color: white;
  text-decoration: none;
  font-weight: 700;
  font-size: 20px;
  text-transform: uppercase;
  transition: color 0.3s ease;
  line-height: 1.2;

}

.sticky-topbar .menu-item a:hover {
  color: #b7a5a1;
}

.sticky-topbar .menu-item.active a {
  color: #b7a5a1 !important;
  /* Updated active color */
}



@media (max-width: 992px) {
  .sticky-topbar .menu-item a {
    font-size: 16px;
  }
  .sticky-topbar .menu-items {
    gap: 25px;
    padding-right: 20px;
  }

  .sticky-topbar .owl-logo img {
    max-height: 130px;
    width: auto;
    left: 30px;
    top: 36px;
    position: absolute;
  }

.sticky-topbar .topbar-content {
  align-items: flex-start;
  padding-top: 71px;
}

}

/* Ensure owl-logo and topbar-content are at the bottom */
.sticky-topbar .row {
  align-items: flex-end;
}

/* Logo Section */
.logo-section {
  padding: 80px 0 30px;
  background: #fff;
}

.logo-section .logo-img {
  max-width: 100%;
  width: 1200px;
  height: auto;
  display: block;
  margin: 0 auto;
}

/* Menu Section */
.menu-section {
  padding: 40px 0;
  background: #fff;
}

/* Hamburger Menu for Mobile in Menu Section */
.menu-section .hamburger {
  display: none;
  font-size: 30px;
  color: #1a3c5e;
  cursor: pointer;
  z-index: 2;
}

.menu-section .menu-items {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 50px;
  /*

    display: flex;
    justify-content: space-evenly;
    flex-wrap: wrap; */
}

.menu-section .menu-item {
  display: inline-block;
}

.menu-section .menu-item a {
  color: #6e3939;
  text-decoration: none;
  font-weight: 700;
  font-size: 20px;
  text-transform: uppercase;
  transition: color 0.3s ease;
  line-height: 1.2;
}

.menu-section .menu-item a:hover {
  color: #1a3c5e;
}

.menu-section .menu-item.active a {
  color: #6e3939;
  /* Updated active color */
}

/* Intro Section */
.intro-section {
  background: #fff;
  padding: 150px 0;
}

.intro-container {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.intro-section h2 {
  font-size: 60px;
  font-weight: 800;
  color: #6e3a3a;
  text-align: left;
  margin-bottom: 40px;
  text-transform: uppercase;
}

.intro-section p {
  font-size: 18px;
  color: #333;
  text-align: left;
  line-height: 1.6;
}



.teaser-headline {
    font-size: 60px;
    font-weight: 800;
    color: #6e3a3a;
    margin-bottom: 10px;
    text-transform: uppercase;
}

/* Sections */
.section {
  position: relative;
  background: #fff;
  padding: 50px 0;
}

.headline-section {
  position: relative;
  background: #6e3a3a;
  padding: 80px 0 80px 0;
  overflow: visible;
}

/* Waves before (top) and after (bottom) */
.headline-section::before,
.headline-section::after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  height: 80px;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  z-index: 1;
  background-color: transparent;
  overflow: hidden !important;
  z-index: 101;
}

/* Top Wave - Wild and Uneven */
.headline-section::before {
  top: -59px;
  /* left: -100px; */
  width: -webkit-fill-available;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 80'%3E%3Cpath fill='%236e3a3a' fill-opacity='1' d='M0,80 C120,20 240,80 360,40 C480,0 600,80 720,30 C840,0 960,80 1080,40 C1200,0 1320,80 1440,20 L1440,80 L0,80 Z'/%3E%3C/svg%3E");
  overflow: hidden;
}

/* Bottom Wave - Smoother but Still Wild and Uneven */
.headline-section::after {
  bottom: -59px;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 1400 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 74L16.7 72.7C33.3 71.3 66.7 68.7 100 61.7C133.3 54.7 166.7 43.3 200 37.2C233.3 31 266.7 30 300 36.7C333.3 43.3 366.7 57.7 400 61C433.3 64.3 466.7 56.7 500 49.7C533.3 42.7 566.7 36.3 600 33.8C633.3 31.3 666.7 32.7 700 35.8C733.3 39 766.7 44 800 42.3C833.3 40.7 866.7 32.3 900 31.5C933.3 30.7 966.7 37.3 1000 40.5C1033.3 43.7 1066.7 43.3 1100 46.3C1133.3 49.3 1166.7 55.7 1200 54.8C1233.3 54 1266.7 46 1300 46.2C1333.3 46.3 1366.7 54.7 1383.3 58.8L1400 63L1400 0L0 0Z' fill='%236e3a3a'/%3E%3C/svg%3E");
    overflow: hidden;
}

.headline-container {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: flex-start;
}

.section .content-container {
  display: flex;
  flex-direction: column;
}

.section h2 {
  font-size: 60px;
  font-weight: 700;
  color: #fff;
  text-align: left;
  margin-bottom: 0;
  text-transform: uppercase;
}

.section p {
  font-size: 18px;
  color: #1b3c5e;
  text-align: left;
  padding: 180px 0 120px;
  margin-top: 40px;
  margin-bottom: 40px;
  line-height: 1.6;
}

.section h3 {
  font-size: 30px;
  font-weight: 700;
  color: #1a3c5e;
  text-align: left;
  margin-top: 30px;
  margin-bottom: 20px;
  text-transform: uppercase;
}

/* Möbel Section: Two Columns */
.text-column {
  display: flex;
  align-items: center;
  text-align: left;
}

.image-column img {
  width: 100%;
  height: auto;
  object-fit: cover;
}

.image-column-unten {
  display: flex;
  flex-direction: column;
  justify-content: center;
  /* height: 100%; */
  /* Make sure the column has height */
}

.image-column-unten img {
  width: 100%;
  height: auto;
  object-fit: cover;
  /* margin-bottom: -80px; */
}


/* Footer */
.footer {
  background: #1a3c5e;
  /* background: #142e47; */
  color: white;
  padding: 80px 0;
  position: relative;
}


footer a {
  color: white;
  text-decoration: none;
}

footer a:hover {
  color: #b7a5a1;
}

/* Wave for Footer (Top) */
.footer::before {
  content: "";
  position: absolute;
  top: -59px;
  /* left: -60px; */
  width: -webkit-fill-available;
  height: 60px;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  z-index: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 80'%3E%3Cpath fill='%231a3c5e' fill-opacity='1' d='M0,80 C120,20 240,80 360,40 C480,0 600,80 720,30 C840,0 960,80 1080,40 C1200,0 1320,80 1440,20 L1440,80 L0,80 Z'/%3E%3C/svg%3E");
}

.footer .footer-headline {
  font-size: 48px;
  font-weight: 700;
  margin-bottom: 40px;
  text-transform: uppercase;
}

.footer .footer-left,
.footer .footer-right {
  font-size: 16px;
  line-height: 1.5;
  position: relative;
  z-index: 1;
}

.footer .footer-link {
  margin-bottom: 10px;
}

.footer .footer-link a {
  color: white;
  text-decoration: none;
  font-weight: 600 !important;
  transition: color 0.3s ease;
  display: flex;
  align-items: center;
}

.footer .footer-link a:hover {
  color: #b7a5a1;
}

.footer .footer-link i {
  margin-right: 8px;
}

.footer h4 {
  font-size: 1.3em;
  font-weight: 700;
}

/* Accordion */
.accordion-item {
  margin-bottom: 10px;
}

.accordion-button {
  background: none;
  color: white;
  border: none;
  padding: 0;
  width: 100%;
  text-align: left;
  font-size: 16px;
  font-weight: 600;
  text-decoration: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  transition: color 0.3s ease;
}

.accordion-button:hover {
  /* color: #b7a5a1; */
  color: #924b4c;
}

.accordion-button.active {
  /* color: #6e3a3a; */
  color: #924b4c;
}

.accordion-button.active .accordion-arrow i {
  transform: rotate(180deg);
}

.accordion-arrow {
  margin-right: 8px;
}

.accordion-arrow i {
  transition: transform 0.3s ease;
}

.accordion-content {
  display: none;
  padding: 10px 0;
  color: white;
  font-size: 14px;
  line-height: 1.5;
}

/* Back to Top Button */
.back-to-top {
  position: fixed;
  bottom: 20px;
  right: 20px;
  background: #b7a5a1;
  color: white;
  width: 60px;
  height: 60px;
  line-height: 60px;
  text-align: center;
  border-radius: 50%;
  display: none;
  font-size: 24px;
  transition: color 0.3s ease;
  z-index: 1010;
}

.back-to-top:hover {
  color: #6e3a3a;
}

/* Responsive Design */
@media (max-width: 767px) {

  /* Initial Topbar Adjustments */
  .initial-topbar {
    display: none;
  }

  /* Sticky Topbar Adjustments */
  .sticky-topbar {
    opacity: 1;
    transform: translateY(0);
    position: fixed;
    top: 0;
    padding: 10px 0;
  }

  .sticky-topbar.visible,
  .sticky-topbar.hidden {
    animation: none;
  }

  /* Position Owl Logo at the Bottom on Mobile */
  .sticky-topbar .owl-logo {
    display: flex;
    align-items: flex-end;
    /* Align owl to the bottom */
    height: 100%;
  }



  /* Make Owl Logo Smaller on Mobile */
  .sticky-topbar .owl-logo img {
    max-height: 126px;
    width: auto;
    left: 29px;
    top: 15px;
    z-index: 1111;
  }

  .sticky-topbar .extra-logo {
    max-width: 200px;
    /* Smaller logo on mobile */
  }

  .sticky-topbar .extra-logo-row {
    display: none;
    /* Hide logo row on mobile */
  }

  /* Change Owl Image Source on Mobile */
  .sticky-topbar .owl-img {
    content: url("../img/owl-mobile.gif");
  }

  .sticky-topbar .topbar-content {
    height: 100px;

      align-items: flex-end;

  }

  /* Make Hamburger Icon Bigger on Mobile */
  .sticky-topbar .hamburger {
    display: block;
    margin-right: 15px;
    font-size: 40px;
    /* Increased size */
  }

  /* Keep Hamburger Icon White When Active on Mobile */
  .sticky-topbar .hamburger.active {
    color: white;
  }

  .sticky-topbar .menu-items {
    display: none;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    /* Center the menu items */
    gap: 20px;
    background: #1a3c5e;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    padding: 20px;
    z-index: 1;
    transform: scaleY(0);
    transform-origin: top;
    transition: transform 0.3s ease;
  }

  .sticky-topbar .menu-items.active {
    display: flex;
    transform: scaleY(1);
  }

  /* Center the Menu Item Text on Mobile */
  .sticky-topbar .menu-item a {
    text-align: center;
      font-size: 18px;

  }

  /* Add Wave to Open Menu on Mobile */
  .sticky-topbar .menu-items.active::after {
    content: "";
    position: absolute;
    bottom: -39px;
    left: 0;
    width: 100%;
    height: 40px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 1400 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 25L11.2 30.2C22.3 35.3 44.7 45.7 66.8 47C89 48.3 111 40.7 133.2 36.7C155.3 32.7 177.7 32.3 200 36.2C222.3 40 244.7 48 266.8 49C289 50 311 44 333.2 45.8C355.3 47.7 377.7 57.3 400 60.7C422.3 64 444.7 61 466.8 56.8C489 52.7 511 47.3 533.2 42.5C555.3 37.7 577.7 33.3 600 33.3C622.3 33.3 644.7 37.7 666.8 40.7C689 43.7 711 45.3 733.2 47.5C755.3 49.7 777.7 52.3 800 49.7C822.3 47 844.7 39 866.8 40.8C889 42.7 911 54.3 933.2 56C955.3 57.7 977.7 49.3 1000 48C1022.3 46.7 1044.7 52.3 1066.8 51.5C1089 50.7 1111 43.3 1133.2 41.7C1155.3 40 1177.7 44 1200 42.3C1222.3 40.7 1244.7 33.3 1266.8 35.2C1289 37 1311 48 1333.2 50.2C1355.3 52.3 1377.7 45.7 1388.8 42.3L1400 39L1400 0L0 0Z' fill='%231a3c5e' stroke-linecap='round' stroke-linejoin='miter'/%3E%3C/svg%3E");
      overflow: hidden;
  }


  .content-container {
    padding-bottom: 0 !important
  }

  /* Hide Menu Section on Mobile */
  .menu-section {
    display: none;
  }

  /* Hide Logo on Mobile */
  .logo-section .logo-img {
    display: none;
  }

  .intro-section h2,
  .section h2,
  .teaser-headline {
    font-size: 36px;
    text-align: center;
  }

  .section p {
    padding: 80px 0 70px;
  }

  .intro-section p,
  .section p {
    font-size: 16px;
    margin-top: 30px;
    margin-bottom: 30px;
  }

  .text-column p {
  padding: 20px 0;
  margin: 30px 0;
  font-size: 16px;
}

  .section h3 {
    font-size: 20px;
    margin-bottom: 20px !important;
  }



  .text-column,
  .image-column {
    margin-bottom: 20px;
  }

  .headline-section::before,
  .headline-section::after {
    height: 50px;
  }

  .headline-section::before {
    top: -49px;
  }

  .headline-section::after {
    bottom: -49px;
  }

  .initial-topbar::after,
  .sticky-topbar::after {
    height: 40px;
    bottom: -39px;
  }

  .footer::before {
    height: 40px;
    top: -39px;
  }

  .footer .footer-headline {
    font-size: 28px;
  }

  .footer .footer-left,
  .footer .footer-right {
    font-size: 16px;
    line-height: 1.5;
  }

  .footer .footer-right {
    margin-top: 40px;
  }

  .back-to-top {
    width: 50px;
    height: 50px;
    line-height: 50px;
    font-size: 20px;
  }
}

@media (min-width: 768px) {

  .headline-container,
  .content-container,
  .intro-container {
    margin-left: 0;
  }

  .footer .footer-left,
  .footer .footer-right {
    display: flex;
    flex-direction: column;
  }

  .footer .footer-right {
    margin-top: 0;
  }
}

/* --- OWL CAROUSEL CUSTOM STYLES --- */
/* --- OWL CAROUSEL CUSTOM STYLES --- */

/* Carousel Container */
.owl-carousel {
  margin: 0;
  width: 100%;
  padding-bottom: 20px;
  position: relative;
}
/* Carousel container */
.owl-carousel .item {
  height: 550px; /* Set your desired fixed carousel height */
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Carousel images */
.owl-carousel .item img {
  height: 100%;
  width: auto;
  object-fit: contain; /* very important */
  display: block;
}


@media (max-width: 768px) {
  .owl-carousel .item {
    height: 300px;
  }
}

/* Dots - Hide default bullets */
.owl-carousel.owl-theme .owl-dots .owl-dot span {
  display: none !important;
}

/* Navigation Arrows Container */
.owl-carousel .owl-nav {
  position: absolute !important;
  top: 50% !important;
  width: 100% !important;
  transform: translateY(-50%) !important;
  z-index: 20 !important;
  display: flex !important;
  justify-content: space-between !important;
  pointer-events: none !important;
}

/* Arrow Buttons */
.owl-carousel button.owl-prev,
.owl-carousel button.owl-next {
  background: #b7a5a1 !important;
  border: none !important;
  color: white !important;
  font-size: 20px !important;
  cursor: pointer !important;
  width: 40px !important;
  height: 40px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  pointer-events: all !important;
  transition: background-color 0.3s, color 0.3s !important;
  position: absolute !important;
}

/* Arrow Positions */
.owl-carousel button.owl-prev {
  left: 0 !important;
}

.owl-carousel button.owl-next {
  right: 0 !important;
}

/* FontAwesome Arrows */
.owl-carousel button.owl-prev::before {
  content: '\f062'; /* fa-arrow-up */
  font-family: 'FontAwesome' !important;
  display: inline-block;
  transform: rotate(270deg);
}

.owl-carousel button.owl-next::before {
  content: '\f062'; /* fa-arrow-up */
  font-family: 'FontAwesome' !important;
  display: inline-block;
  transform: rotate(90deg);
}

/* Hover Effects */
.owl-carousel button.owl-prev:hover,
.owl-carousel button.owl-next:hover {
  background: #d0c4c1 !important;
  color: #6e3a3a !important;
}

/* Dots Container */
.owl-carousel .owl-dots {
  position: absolute !important;
  bottom: 0px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  display: flex !important;
  justify-content: center !important;
  transition: all 0.3s ease !important;
}

/* Dot Buttons */
.owl-carousel button.owl-dot {
  width: 20px !important;
  height: 5px !important;
  background: #b7a5a1 !important;
  border-radius: 6px !important;
  margin: 0 5px !important;
  cursor: pointer !important;
  transition: background-color 0.3s ease, transform 0.3s ease !important;
  box-shadow: 0 0 1px rgba(0, 0, 0, 0.1) !important;
}

/* Dot Hover and Active States */
.owl-carousel button.owl-dot:hover,
.owl-carousel button.owl-dot.active {
  background: #6e3a3a !important;
  transform: scale(1.1) !important;
}

/* Hide Owl Carousel's default span inside arrows */
.owl-carousel button.owl-prev span,
.owl-carousel button.owl-next span {
  display: none !important;
}
