/**
 * YOW Theme Customization
 * Overrides default colors to match YOW brand identity
 * Primary Brand Color: #7c3aed (Purple)
 */

:root {
  /* Primary brand colors - override from style.css */
  --main-color-one: #7c3aed !important;
  --secondary-color: #7c3aed !important;
  --heading-color: #161619;
  --paragraph-color: #828282;
}

/* Primary button styles - HIGHEST PRIORITY */
button.boxed-btn,
a.boxed-btn,
.boxed-btn {
  background: #7c3aed !important;
  background-color: #7c3aed !important;
  background-image: none !important;
  border: 2px solid #7c3aed !important;
  color: #fff !important;
  transition: all 0.3s ease !important;
}

button.boxed-btn:hover,
button.boxed-btn:focus,
button.boxed-btn:active,
a.boxed-btn:hover,
a.boxed-btn:focus,
a.boxed-btn:active,
.boxed-btn:hover,
.boxed-btn:focus,
.boxed-btn:active {
  background: #6b7280 !important;
  background-color: #6b7280 !important;
  background-image: none !important;
  border-color: #6b7280 !important;
  color: #fff !important;
}

/* Secondary/outlined button */
button.boxed-btn.blank,
a.boxed-btn.blank,
.boxed-btn.blank {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 2px solid #7c3aed !important;
  color: #7c3aed !important;
  transition: all 0.3s ease !important;
}

button.boxed-btn.blank:hover,
button.boxed-btn.blank:focus,
button.boxed-btn.blank:active,
a.boxed-btn.blank:hover,
a.boxed-btn.blank:focus,
a.boxed-btn.blank:active,
.boxed-btn.blank:hover,
.boxed-btn.blank:focus,
.boxed-btn.blank:active {
  background: #6b7280 !important;
  background-color: #6b7280 !important;
  background-image: none !important;
  border-color: #6b7280 !important;
  color: #fff !important;
}

/* Preloader logo z-index - keep logo on top */
#preloader .loaderLogo {
  position: relative !important;
  z-index: 10 !important;
}

#preloader .loader,
#preloader .loader1,
#preloader .loader2,
#preloader .loader3 {
  z-index: 1 !important;
}

/* Navbar cart icon and user elements */
.mapIcons i {
  color: #7c3aed !important;
}

/* Links and hover states */
a:hover {
  color: #7c3aed;
}

/* Form focus states */
.input-field input:focus {
  border: 1px solid #7c3aed !important;
}

.input-field input:is(:focus, :valid)~label {
  color: #7c3aed !important;
}

/* Login/Signup form elements */
.input-field input:focus:placeholder-shown~label {
  color: #7c3aed !important;
}

form button {
  background: #7c3aed !important;
  transition: all 0.3s ease !important;
}

form button:hover {
  background: #6b7280 !important;
}

form a {
  color: #7c3aed !important;
}

/* Cart and checkout page */
table.cart_item thead tr {
  background: linear-gradient(to bottom right, #7c3aed, #6d28d9) !important;
}

.check_out_box {
  border-top: 3px solid #7c3aed !important;
}

/* Mobile menu cart icon */
.mobile-cart {
  color: #7c3aed !important;
}

/* Reserve button in modals */
.reserve-btn .submit-btn,
.close-button {
  background-color: #7c3aed !important;
  transition: all 0.3s ease !important;
}

.reserve-btn .submit-btn:hover {
  background-color: #6b7280 !important;
  border-color: #6b7280 !important;
  color: #fff !important;
}

.close-button:hover {
  background-color: #6b7280 !important;
}

/* Modal buttons */
.modal-row .boxed-btn {
  background: #7c3aed !important;
}

.modal-row .boxed-btn:hover {
  background: #6b7280 !important;
}

/* Book Now button special styling */
button.boxed-btn[style*="background: #ff6b6b"] {
  background: #7c3aed !important;
}

/* Category tab active state */
ul.mapIcons li.nav-item a.nav-link.active {
  border: 2px solid #7c3aed !important;
}

/* User icon in mobile view */
.mobile-user-icon {
  color: #7c3aed !important;
}

/* Navigation active state */
.navbar-nav .nav-link.active,
.navbar-nav .nav-link:hover {
  color: #7c3aed !important;
}

/* Preloader and loading elements */
.preloader {
  background-color: #7c3aed;
}

/* Section titles and headings with accent color */
.section-title h2::after,
.section-title h2::before {
  background-color: #7c3aed;
}

/* Icon boxes and feature items */
.single-icon-box .icon {
  color: #7c3aed;
}

/* Testimonial and quote elements */
.testimonial-item .icon {
  color: #7c3aed;
}

/* Footer links hover */
.footer-area a:hover {
  color: #7c3aed;
}

/* Social icons hover effect */
.social_share li a:hover {
  background-color: #7c3aed !important;
  border-color: #7c3aed !important;
}

/* Pagination and navigation elements */
.pagination .page-item.active .page-link {
  background-color: #7c3aed;
  border-color: #7c3aed;
}

/* Search and input highlights */
.form-control:focus {
  border-color: #7c3aed;
  box-shadow: 0 0 0 0.2rem rgba(124, 58, 237, 0.25);
}

/* Breadcrumb active state */
.breadcrumb-item.active {
  color: #7c3aed;
}

/* Back to top button */
.back-to-top .to-top {
  background-color: #7c3aed;
}

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

/* Counter and statistics */
.counterup-area .single-counterup .icon {
  color: #7c3aed;
}

/* Service items and cards */
.single-service-item:hover {
  border-color: #7c3aed;
}

/* Tab navigation */
.nav-tabs .nav-link.active {
  border-bottom-color: #7c3aed;
  color: #7c3aed;
}

/* Progress bars and loaders */
.progress-bar {
  background-color: #7c3aed;
}

/* Badges and labels */
.badge-primary {
  background-color: #7c3aed;
}

/* Custom checkbox and radio buttons */
.custom-checkbox .custom-control-input:checked~.custom-control-label::before,
.custom-radio .custom-control-input:checked~.custom-control-label::before {
  background-color: #7c3aed;
  border-color: #7c3aed;
}

/* Slider and carousel active dots */
.owl-carousel .owl-dot.active span {
  background-color: #7c3aed;
}

/* Map marker info window customize */
.gm-style .gm-style-iw-c {
  border-top: 3px solid #7c3aed;
}

/* Additional accent elements */
.accent-color,
.text-primary {
  color: #7c3aed !important;
}

.bg-primary {
  background-color: #7c3aed !important;
}

/* Newsletter subscribe button */
.subscribe-btn {
  background-color: #7c3aed !important;
  color: #fff;
}

.subscribe-btn:hover {
  background-color: #6d28d9 !important;
}

/* Call to action sections */
.call-to-action-area {
  background-color: rgba(124, 58, 237, 0.9);
}

/* Overlay backgrounds */
.breadcrumb-area:before {
  background: linear-gradient(to right, rgba(124, 58, 237, 0.95) 0%, rgba(109, 40, 217, 0.8) 50%, rgba(124, 58, 237, 0.7) 100%) !important;
}

/* Header sticky state */
.nav-custom-fixed.affix {
  border-bottom: 2px solid rgba(124, 58, 237, 0.1);
}

/* Mobile menu toggle */
.navbar-toggler:focus,
.navbar-toggler:hover {
  border-color: #7c3aed;
}

/* Dropdown menu active items */
.dropdown-item.active,
.dropdown-item:active {
  background-color: #7c3aed;
}

/* Pricing tables */
.price-plan-item.featured {
  border-color: #7c3aed;
}

.price-plan-item .price {
  color: #7c3aed;
}

/* Timeline elements */
.timeline-item::before {
  background-color: #7c3aed;
}

/* Video play button */
.video-play-btn {
  background-color: #7c3aed;
}

.video-play-btn:hover {
  background-color: #6d28d9;
}

/* Spinner and loading states */
.spinner-border {
  border-color: #7c3aed;
  border-right-color: transparent;
}

/* Alert and notification accents */
.alert-primary {
  background-color: rgba(124, 58, 237, 0.1);
  border-color: #7c3aed;
  color: #6d28d9;
}

/* Tags and chips */
.tag,
.chip {
  background-color: rgba(124, 58, 237, 0.1);
  color: #7c3aed;
  border: 1px solid #7c3aed;
}

/* Quotes and blockquotes */
blockquote {
  border-left-color: #7c3aed;
}

/* Mobile fixes - ensure theme consistency */
@media (max-width: 991px) {
  .navbar-toggler.cross-menu .cross-menu-wrapper span {
    background-color: #7c3aed;
  }

  ul.mapIcons li.nav-item a.nav-link.active {
    border-bottom: 2px solid #7c3aed !important;
  }
}

/* Ensure all primary color references are updated */
*[style*="--main-color-one"],
*[style*="--secondary-color"] {
  --main-color-one: #7c3aed !important;
  --secondary-color: #7c3aed !important;
}

/* Override ALL red colors from custom.css and mobile-fixes.css */
/* This ensures complete consistency with grey hover */
button:hover,
.btn:hover,
a.boxed-btn:hover,
button.boxed-btn:hover,
.submit-btn:hover,
.book-now-btn:hover,
input[type="submit"]:hover,
input[type="button"]:hover {
  background: #a173f1 !important;
    background-color: #6d28d9 !important;
    border-color: #6d28d9;
  background-image: none !important;
  color: #fff !important;
}

/* Override specific button classes that may have red */
.btn-primary:hover,
.btn-danger:hover,
.btn-red:hover {
  background: #6b7280 !important;
  border-color: #6b7280 !important;
}

/* Make sure outlined buttons also get grey hover */
.btn-outline-primary:hover,
.btn-outline-danger:hover {
  background: #6b7280 !important;
  border-color: #6b7280 !important;
  color: #fff !important;
}

/* Override any gradient backgrounds on hover */
*[class*="boxed-btn"]:hover {
  background: #6b7280 !important;
  background-image: none !important;
  border-color: #6b7280 !important;
}

/* Specific overrides for custom.css red colors */
.modal-row .boxed-btn:hover,
form button:hover,
.reserve-btn .submit-btn:hover,
.subscribe-btn:hover {
  background: #6b7280 !important;
  background-color: #6b7280 !important;
  background-image: none !important;
}

/* Override mobile-fixes.css red colors */
@media (max-width: 991px) {
  button:hover,
  .boxed-btn:hover,
  .btn:hover {
    background: #6b7280 !important;
    background-color: #6b7280 !important;
    border-color: #6b7280 !important;
  }
}
