/* These styles are generated from project.scss. */

/* $nb-black: #2F363B;
$nb-buckskin: #9C8462;
$nb-palomino: #E1CCB8;
$nb-chestnut: #5A1C0C; */

:root {
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #E1CCB8;
  --bs-btn-active-border-color: #E1CCB8;
}

.btn-primary {
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #E1CCB8;
  --bs-btn-active-border-color: #E1CCB8;
}

input::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  
  color: red 
}

.pagination {
  --bs-pagination-hover-color: #2F363B;
}

.bg-black {
  background-color: #2F363B;
}
.bg-buckskin {
  background-color: #9C8462;
}
.bg-palomino {
  background-color: #E1CCB8;
}
.bg-chestnut {
  background-color: #5A1C0C;
}

.bg-cremello {
  background-color: #faf4ed;
}

.text-black {
  color: #2F363B;
}
.text-buckskin {
  color: #9C8462;
}
.text-palomino {
  color: #E1CCB8;
}
.text-chestnut {
  color: #5A1C0C;
}

.n-icon {
  max-width: 120px;
  max-height: 100px;
}


h1, h2, h3, h4, h5 {
  /* font-family: guyot-headline, sans-serif; */
  font-family: modesto-text, sans-serif;
  font-weight: 800;
  font-style: normal;
}

/* body{
  margin-top: 100px;
} */



.btn-primary{
  background-color: #9C8462;
  border-color: #9C8462;
}
.btn-primary:hover {
  background-color: #E1CCB8;
  border-color: #E1CCB8;

}
.btn-primary:focus {
  background-color: #E1CCB8;
  border-color: #E1CCB8;

}


.page-content {

  min-height: 60vh;
}

.alert-debug {
  color: black;
  background-color: white;
  border-color: #d6e9c6;
}

.alert-error {
  color: #b94a48;
  background-color: #f2dede;
  border-color: #eed3d7;
}


/* Sticky Navbar */
#site-nav {
  position: sticky;
  top: 0;
  z-index: 1030;
  transition: all 0.3s ease;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.08);
}

#site-nav.scrolled {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  background-color: #faf4ed !important;
}

/* Enhanced Navbar Spacing & Dropdowns */
#site-nav .nav-link {
  transition: all 0.2s ease;
}

#site-nav .nav-link:hover {
  color: #9C8462 !important;
}

#site-nav .dropdown-menu {
  border-radius: 10px;
  padding: 0.5rem;
  margin-top: 0.5rem;
  animation: fadeInDown 0.3s ease;
}

@keyframes fadeInDown {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

#site-nav .dropdown-item {
  border-radius: 6px;
  transition: all 0.2s ease;
}

#site-nav .dropdown-item:hover {
  background-color: #faf4ed;
  padding-left: 1rem;
}

#site-nav .dropdown-item i {
  width: 20px;
  text-align: center;
}

#site-nav .dropdown-header {
  font-size: 0.7rem;
  letter-spacing: 0.5px;
  padding: 0.5rem 1rem 0.25rem;
}

.navbar {
  transition: all 0.3s ease;
  z-index: 1000000;
}

.nav-scrolled {
  background: white;
  box-shadow: 5px 7px 18px rgb(0, 0, 0, 0.4);
  content: "";
  position: fixed;
}

.navbar-light .navbar-nav .nav-link.active, .navbar-light .navbar-nav .show>.nav-link {
    text-decoration: underline 3px #9C8462;
}

/* .navbar-nav {
  width: 100%;
  justify-content: flex-end;
} */

/* .nav-link {
  color: white;
} */

a {
    color: black
}

a:hover {
  color: #9C8462
}


/* ============================================
   BUTTON OVERRIDES - NO BOOTSTRAP BLUE!
   All button states use custom buckskin colors
   ============================================ */

/* Primary Button - Main CTA */
.btn-primary {
  background-color: #9C8462 !important;
  border-color: #9C8462 !important;
  color: #fff !important;
}

.btn-primary:hover,
.btn-primary:focus {
  background-color: #8B7452 !important;
  border-color: #8B7452 !important;
  color: #fff !important;
  box-shadow: 0 0 0 0.25rem rgba(156, 132, 98, 0.25) !important;
}

.btn-primary:active,
.btn-primary.active,
.show > .btn-primary.dropdown-toggle {
  background-color: #7A6442 !important;
  border-color: #7A6442 !important;
  color: #fff !important;
}

.btn-primary:disabled,
.btn-primary.disabled {
  background-color: #9C8462 !important;
  border-color: #9C8462 !important;
  opacity: 0.6;
}

/* Check and focus-visible states */
.btn-check:checked + .btn-primary,
.btn-check:active + .btn-primary {
  background-color: #7A6442 !important;
  border-color: #7A6442 !important;
}

.btn-primary:focus-visible {
  background-color: #8B7452 !important;
  border-color: #8B7452 !important;
  box-shadow: 0 0 0 0.25rem rgba(156, 132, 98, 0.5) !important;
}

/* Outline Primary Button */
.btn-outline-primary {
  color: #9C8462 !important;
  border-color: #9C8462 !important;
  background-color: transparent !important;
}

.btn-outline-primary:hover,
.btn-outline-primary:focus {
  background-color: #9C8462 !important;
  border-color: #9C8462 !important;
  color: #fff !important;
  box-shadow: 0 0 0 0.25rem rgba(156, 132, 98, 0.25) !important;
}

.btn-outline-primary:active,
.btn-outline-primary.active,
.btn-outline-primary.dropdown-toggle.show {
  background-color: #7A6442 !important;
  border-color: #7A6442 !important;
  color: #fff !important;
}

.btn-outline-primary:disabled,
.btn-outline-primary.disabled {
  color: #9C8462 !important;
  background-color: transparent !important;
  opacity: 0.6;
}

/* Buckskin Button Variants */
.btn-buckskin {
  background-color: #9C8462 !important;
  border-color: #9C8462 !important;
  color: #fff !important;
}

.btn-buckskin:hover,
.btn-buckskin:focus {
  background-color: #8B7452 !important;
  border-color: #8B7452 !important;
  color: #fff !important;
  box-shadow: 0 0 0 0.25rem rgba(156, 132, 98, 0.25) !important;
}

.btn-outline-buckskin {
  color: #9C8462 !important;
  border-color: #9C8462 !important;
  background-color: transparent !important;
}

.btn-outline-buckskin:hover,
.btn-outline-buckskin:focus {
  background-color: #9C8462 !important;
  border-color: #9C8462 !important;
  color: #fff !important;
  box-shadow: 0 0 0 0.25rem rgba(156, 132, 98, 0.25) !important;
}

/* Secondary Button - Use Palomino */
.btn-secondary {
  background-color: #E1CCB8 !important;
  border-color: #E1CCB8 !important;
  color: #2F363B !important;
}

.btn-secondary:hover,
.btn-secondary:focus {
  background-color: #D1BCA8 !important;
  border-color: #D1BCA8 !important;
  color: #2F363B !important;
  box-shadow: 0 0 0 0.25rem rgba(225, 204, 184, 0.25) !important;
}

.btn-secondary:active,
.btn-secondary.active,
.show > .btn-secondary.dropdown-toggle {
  background-color: #C1AC98 !important;
  border-color: #C1AC98 !important;
  color: #2F363B !important;
}

/* Outline Secondary Button */
.btn-outline-secondary {
  color: #E1CCB8 !important;
  border-color: #E1CCB8 !important;
  background-color: transparent !important;
}

.btn-outline-secondary:hover,
.btn-outline-secondary:focus {
  background-color: #E1CCB8 !important;
  border-color: #E1CCB8 !important;
  color: #2F363B !important;
  box-shadow: 0 0 0 0.25rem rgba(225, 204, 184, 0.25) !important;
}

.btn-outline-secondary:active,
.btn-outline-secondary.active {
  background-color: #C1AC98 !important;
  border-color: #C1AC98 !important;
  color: #2F363B !important;
}

/* Success Button - Use darker buckskin */
.btn-success {
  background-color: #5A1C0C !important;
  border-color: #5A1C0C !important;
  color: #fff !important;
}

.btn-success:hover,
.btn-success:focus {
  background-color: #4A0C00 !important;
  border-color: #4A0C00 !important;
  color: #fff !important;
}

.btn-success:active,
.btn-success.active {
  background-color: #3A0000 !important;
  border-color: #3A0000 !important;
}

/* Danger Button - Keep red but match style */
.btn-danger:hover,
.btn-danger:focus {
  box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25) !important;
}

/* Warning Button - Keep yellow but match style */
.btn-warning:hover,
.btn-warning:focus {
  box-shadow: 0 0 0 0.25rem rgba(255, 193, 7, 0.25) !important;
}

/* Info Button - Use buckskin instead of blue */
.btn-info {
  background-color: #9C8462 !important;
  border-color: #9C8462 !important;
  color: #fff !important;
}

.btn-info:hover,
.btn-info:focus {
  background-color: #8B7452 !important;
  border-color: #8B7452 !important;
  box-shadow: 0 0 0 0.25rem rgba(156, 132, 98, 0.25) !important;
}

/* Dark Button - Use our black */
.btn-dark {
  background-color: #2F363B !important;
  border-color: #2F363B !important;
  color: #fff !important;
}

.btn-dark:hover,
.btn-dark:focus {
  background-color: #1F262B !important;
  border-color: #1F262B !important;
  box-shadow: 0 0 0 0.25rem rgba(47, 54, 59, 0.25) !important;
}

/* Light Button - Use palomino */
.btn-light {
  background-color: #faf4ed !important;
  border-color: #faf4ed !important;
  color: #2F363B !important;
}

.btn-light:hover,
.btn-light:focus {
  background-color: #E1CCB8 !important;
  border-color: #E1CCB8 !important;
  color: #2F363B !important;
}

/* Link Button - Use buckskin */
.btn-link {
  color: #9C8462 !important;
  text-decoration: none;
}

.btn-link:hover,
.btn-link:focus {
  color: #7A6442 !important;
  text-decoration: underline;
}

/* Close Button - Custom colors */
.btn-close:focus {
  box-shadow: 0 0 0 0.25rem rgba(156, 132, 98, 0.25) !important;
}

/* Form Controls - Override blue focus */
.form-control:focus,
.form-select:focus {
  border-color: #9C8462 !important;
  box-shadow: 0 0 0 0.25rem rgba(156, 132, 98, 0.25) !important;
}

/* Checkbox and Radio - No blue */
.form-check-input:focus {
  border-color: #9C8462 !important;
  box-shadow: 0 0 0 0.25rem rgba(156, 132, 98, 0.25) !important;
}

.form-check-input:checked {
  background-color: #5A1C0C !important;
  border-color: #5A1C0C !important;
}

/* Switch Toggle */
.form-switch .form-check-input:checked {
  background-color: #9C8462 !important;
  border-color: #9C8462 !important;
}

.form-switch .form-check-input:focus {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%239C8462'/%3e%3c/svg%3e") !important;
}

/* Range Input */
.form-range:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(156, 132, 98, 0.25) !important;
}

.form-range:focus::-moz-range-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(156, 132, 98, 0.25) !important;
}

.form-range::-webkit-slider-thumb:active {
  background-color: #C1AC98 !important;
}

.form-range::-moz-range-thumb:active {
  background-color: #C1AC98 !important;
}

/* Links - Override any blue links */
a:not(.btn):not(.nav-link):not(.page-link) {
  color: #2F363B;
  text-decoration: none;
}

a:not(.btn):not(.nav-link):not(.page-link):hover {
  color: #9C8462;
}

/* Badge - Use buckskin for primary */
.badge.bg-primary {
  background-color: #9C8462 !important;
}

.badge.bg-info {
  background-color: #9C8462 !important;
}

/* Alert Links */
.alert-primary {
  background-color: rgba(156, 132, 98, 0.1) !important;
  border-color: rgba(156, 132, 98, 0.2) !important;
  color: #7A6442 !important;
}

.alert-primary .alert-link {
  color: #5A4432 !important;
}

/* Dropdown */
.dropdown-item.active,
.dropdown-item:active {
  background-color: #9C8462 !important;
  color: #fff !important;
}

.dropdown-item:hover,
.dropdown-item:focus {
  background-color: rgba(156, 132, 98, 0.1) !important;
  color: #7A6442 !important;
}

/* List Group */
.list-group-item.active {
  background-color: #9C8462 !important;
  border-color: #9C8462 !important;
}

.list-group-item-primary {
  background-color: rgba(156, 132, 98, 0.1) !important;
  color: #7A6442 !important;
}

/* Toast */
.toast-header {
  background-color: rgba(156, 132, 98, 0.1) !important;
}

/* Progress Bar */
.progress-bar {
  background-color: #9C8462 !important;
}

/* Spinner */
.spinner-border.text-primary,
.spinner-grow.text-primary {
  color: #9C8462 !important;
}

/* ============================================
   END BUTTON OVERRIDES
   ============================================ */

.btn-primary:active {
  color:unset;
}


.homepage-hero-img {
  max-height: 600px;
}

.heroSection {
  height: 80vh;
  width: 100%;
  overflow: hidden;
}

.carousel-content {
  z-index: 1000;
  width: 100%;
  max-width: 600px;
}

.carousel-item img {
filter: brightness(70%);
}

#heroTitle {
text-decoration: underline 8px #9C8462;
}

.header-underline {
  text-decoration: underline 5px #9C8462;
}


/* Multisearch */
#multisearch-container {
  width: 100%;
  max-width: 600px;
  color: white;
  /* position: absolute; */
  /* margin: 0 auto; */
}

.multisearch_bar {
padding: 15px;
background-color: rgba(156, 132, 98, 0.85);
border-radius: .25rem; }

#ms_submit {
height: 38px;
background-color: #2F363B;
fill: white; }

.form-check-input:checked {
background-color: #5A1C0C;
border-color: #5A1C0C; }

.category-buttons button {
background-color: #2F363B; }

a.card:hover {
  color: unset;
}

.search-form .form-label {
  font-family: modesto-text, sans-serif;
  font-weight: 800;
  font-style: normal;
}

/* Homepage */
.bw-horse-bg {
  height: 500px;
  background-image: url("/static/images/bw-horse.jpg");
  background-position: left bottom;
  background-size: cover;
  background-repeat: no-repeat;
}

.card-img-overlay {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  height: 100%;
  z-index: 2;
}

.services-thumb {
  /* max-height: 200px; */
  width: 100%;
  filter: brightness(.8);
}

.colorshadow {
  border: 0px solid #9C8462;
  /* padding: 10px; */
  box-shadow: 8px 6px #9C8462;
}

.img-gradient-overlay {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: opacity .25s ease-in-out;
  background-color: #1f1b2d;
  background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,1) 100%);
  opacity: .5;
  z-index: 1;
}


/* User profile page */
.profile-avatar {
  height: 200px;
  width: 200px;
}


/* Footer */
.site-footer {
  width: 100%;
  background-color: #2F363B;
  color: white;
  left: 0;
  bottom: 0;
  padding: 10px 20px;
}

.site-footer a {
  color: white;
}

.site-footer a:hover {
    color: #E1CCB8;
}

.site-footer .form-control {
  color:white;
}
.footer-content {
    margin: 0 auto;
}

footer .logo {
    width: 300px;
}

.page-item.active .page-link {
  z-index: 3;
  color: #fff;
  background-color: #9C8462;
  border-color: #9C8462;
}

.page-link {
  color: #2F363B;
}

/* Animations */
@-webkit-keyframes slide-top {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  100% {
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
  }
}
@keyframes slide-top {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  100% {
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
  }
}

.slide-top:hover {
	-webkit-animation: slide-top 0.4s both;
	        animation: slide-top 0.4s both;
}


.container-bg {
  min-height: 400px;
  background-size: cover;
  background-position: bottom;
}

.text-shadow {
  text-shadow: 2px 4px 3px rgba(0,0,0,0.3);
}


/* Swiper */
:root {
  --swiper-theme-color: #fff !important;
}
.swiper {
  width: 100%;
  height: 100%;
}

.swiper-slide {
  text-align: center;
  font-size: 18px;
  background: #fff;

  /* Center slide text vertically */
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;

}

.swiper-slide img {
  display: block;
  min-height: 300px;
  width: 100%;
  height: 100%;
  object-fit: cover;
}


/* .swiper-button-prev, .swiper-button-next{
  border: 1px solid rgb(211, 212, 213);
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background-color: rgb(255, 255, 255);
    box-shadow: rgba(0, 0, 0, 0.25) 0px 0px 24px 0px;
} */
/*
.swiper-button-prev {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translatey(-50%);
  z-index: 10;
  cursor: pointer;
  padding: 15px;
  background-color: red;
}

.swiper-button-next {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translatey(-50%);
  z-index: 10;
  cursor: pointer;
} */




.header-img {
  width: 100%;
  height:400px;

  /* Center and scale the image nicely */
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;

}
.header-img img {
  height:300px;
  /* margin-left: 50%;
  transform: translateX(-50%); */
}



.header-thumbnail {
  padding: 0.25rem;
  background-color: #fff;
  border-radius: 0.375rem;
  width: auto;
  height: 125px;
}

.map-container {
  height: 300px;
  width: 100%;
  position: relative;
  overflow: hidden;
  border-radius: 0.375rem;
}

#map {
  height: 100%;
  width: 100%;
  z-index: 1;
}


.stars-container {
  --star-size: 25px;
  --star-color: #efefef;
  --star-background: #fc0;
  position: relative;
  box-sizing: border-box;
  height: 30px;
}

.stars-container-average {
  --star-size: 50px;
  height: 50px;
}

.stars {
  --percent: calc(var(--rating) / 5 * 100%);
  display: inline-block;
  font-size: var(--star-size);
  font-family: Times;
  line-height: 1;
}
.stars::before {
  content: "★★★★★";
  letter-spacing: 3px;
  background: linear-gradient(90deg, var(--star-background) var(--percent), var(--star-color) var(--percent));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}


.save-icon {
  -webkit-transition: color .5s ease-out;
  -moz-transition: color .5s ease-out;
  -o-transition: color .5s ease-out;
  transition: color .5s ease-out;
}

/* Star Rating Widget */
.star-rating-widget .star-label {
  cursor: pointer;
  transition: transform 0.2s ease;
  padding: 0.25rem;
}

.star-rating-widget .star-label:hover {
  transform: scale(1.15);
}

.star-rating-widget .star-label i {
  transition: color 0.2s ease;
}

.star-rating-widget .star-label:hover i,
.star-rating-widget .star-label i.text-warning {
  color: #ffc107 !important;
}

.star-rating-widget .star-label i.text-muted {
  color: #dee2e6 !important;
}
