/* Unified Button Colors - Orange Theme */
/* This file ensures all buttons across the site use consistent orange colors */

:root {
  --btn-orange-primary: rgb(229, 84, 0);
  --btn-orange-dark: rgb(204, 75, 0);
  --btn-orange-darker: rgb(178, 65, 0);
  --btn-orange-light: rgb(255, 140, 58);
}

/* Primary Buttons - Orange Gradient */
.services-primary-btn,
.btn-primary-hero,
.pricing-cta-modern.primary,
.btn-book-table,
.btn-submit-form,
.btn-faq-cta,
.btn-view-case {
  background: linear-gradient(135deg, var(--btn-orange-primary), var(--btn-orange-dark)) !important;
  color: #ffffff !important;
  border: none !important;
}

.services-primary-btn::before,
.btn-primary-hero::before,
.btn-submit-form::before {
  background: linear-gradient(135deg, var(--btn-orange-dark), var(--btn-orange-darker)) !important;
}

.services-primary-btn:hover,
.btn-primary-hero:hover,
.pricing-cta-modern.primary:hover,
.btn-book-table:hover,
.btn-submit-form:hover {
  background: linear-gradient(135deg, var(--btn-orange-dark), var(--btn-orange-darker)) !important;
  box-shadow: 0 12px 35px rgba(229, 84, 0, 0.4) !important;
}

/* Secondary/Outline Buttons - Orange Border */
.services-secondary-btn,
.btn-secondary-hero,
.pricing-cta-modern:not(.primary) {
  background: rgba(229, 84, 0, 0.08) !important;
  color: var(--btn-orange-primary) !important;
  border: none !important;
}

.services-secondary-btn:hover,
.btn-secondary-hero:hover,
.pricing-cta-modern:not(.primary):hover {
  background: var(--btn-orange-primary) !important;
  color: #ffffff !important;
  border-color: var(--btn-orange-primary) !important;
}

/* FAQ and CTA Buttons */
.btn-faq-cta {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 14px 32px;
  font-size: 1rem;
  font-weight: 600;
  border-radius: 50px;
  transition: all 0.3s ease;
  text-decoration: none;
}

.btn-faq-cta:hover {
  transform: translateY(-3px);
  color: #ffffff !important;
}

.btn-view-case {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 28px;
  font-size: 0.95rem;
  font-weight: 600;
  border-radius: 50px;
  transition: all 0.3s ease;
  text-decoration: none;
}

.btn-view-case:hover {
  transform: translateY(-3px);
  color: #ffffff !important;
}

/* Bootstrap Button Overrides */
.btn-primary {
  --bs-btn-bg: var(--btn-orange-primary) !important;
  --bs-btn-border-color: var(--btn-orange-primary) !important;
  --bs-btn-hover-bg: var(--btn-orange-dark) !important;
  --bs-btn-hover-border-color: var(--btn-orange-dark) !important;
  --bs-btn-active-bg: var(--btn-orange-darker) !important;
  --bs-btn-active-border-color: var(--btn-orange-darker) !important;
  border: none !important;
  box-shadow: none !important;
}

.btn-outline-primary {
  --bs-btn-color: var(--btn-orange-primary) !important;
  --bs-btn-border-color: var(--btn-orange-primary) !important;
  --bs-btn-hover-bg: var(--btn-orange-primary) !important;
  --bs-btn-hover-border-color: var(--btn-orange-primary) !important;
  --bs-btn-active-bg: var(--btn-orange-dark) !important;
  --bs-btn-active-border-color: var(--btn-orange-dark) !important;
}

/* Home Page Specific Buttons - scoped to avoid Bootstrap conflicts */
.index-page .btn.btn-primary,
.btn-get-started {
  background: linear-gradient(135deg, var(--btn-orange-primary), var(--btn-orange-dark)) !important;
  border: none !important;
  color: #ffffff !important;
}

.index-page .btn.btn-primary:hover,
.btn-get-started:hover {
  background: linear-gradient(135deg, var(--btn-orange-dark), var(--btn-orange-darker)) !important;
  box-shadow: 0 10px 30px rgba(229, 84, 0, 0.4) !important;
}

.index-page .btn.btn-outline,
.btn-outline {
  background: rgba(229, 84, 0, 0.08) !important;
  border: none !important;
  color: var(--btn-orange-primary) !important;
}

.index-page .btn.btn-outline:hover,
.btn-outline:hover {
  background: var(--btn-orange-primary) !important;
  color: #ffffff !important;
  border-color: var(--btn-orange-primary) !important;
}

/* Contact and Form Buttons */
.contact .php-email-form button[type="submit"] {
  background: linear-gradient(135deg, var(--btn-orange-primary), var(--btn-orange-dark)) !important;
  border: none !important;
  color: #ffffff !important;
}

.contact .php-email-form button[type="submit"]:hover {
  background: linear-gradient(135deg, var(--btn-orange-dark), var(--btn-orange-darker)) !important;
  box-shadow: 0 10px 30px rgba(229, 84, 0, 0.4) !important;
}

/* Ensure text contrast for accessibility */
.services-primary-btn,
.btn-primary-hero,
.pricing-cta-modern.primary,
.btn-book-table,
.btn-submit-form,
.btn-faq-cta,
.btn-view-case,
.btn.btn-primary,
.btn-get-started {
  color: #ffffff !important;
}

/* Icon colors in buttons */
.services-primary-btn i,
.btn-primary-hero i,
.pricing-cta-modern i,
.btn-book-table i,
.btn-submit-form i,
.btn-faq-cta i,
.btn-view-case i {
  color: inherit !important;
}

/* ── Remove all button borders globally ── */
.btn-package,
.btn-package.featured-btn,
.pricing-cta-modern,
.pricing-cta-modern.primary,
.btn.btn-primary,
.btn-get-started,
.btn-primary-hero,
.services-primary-btn,
.btn-submit-form,
.btn-faq-cta,
.btn-view-case,
.btn-book-table {
  border: none !important;
  outline: none !important;
  -webkit-appearance: none;
  appearance: none;
}

.btn-package:focus,
.btn-package:focus-visible,
.btn.btn-primary:focus,
.btn.btn-primary:focus-visible,
.pricing-cta-modern:focus,
.pricing-cta-modern:focus-visible {
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(229, 84, 0, 0.3) !important;
}