/* ==========================================================================
   BUTTONS, CTA ACCENTS & STICKY BROCHURE TAB
   ========================================================================== */

/* Base Button Styles */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: 0.95rem;
  padding: 0.75rem 1.6rem;
  border-radius: var(--radius-sm);
  border: 1px solid transparent;
  cursor: pointer;
  text-decoration: none;
  transition: all var(--transition-fast);
  white-space: nowrap;
}

.btn-lg {
  padding: 0.9rem 2rem;
  font-size: 1.05rem;
}

.btn-sm {
  padding: 0.5rem 1.1rem;
  font-size: 0.85rem;
}

.btn-full {
  width: 100%;
}

/* Primary Brand Gold Button (Logo Solar Orange-Gold) */
.btn-gold {
  background: var(--color-gold);
  color: var(--color-white);
  border-color: var(--color-gold);
  box-shadow: 0 4px 14px rgba(224, 135, 19, 0.28);
}

.btn-gold:hover {
  background: var(--color-gold-hover);
  border-color: var(--color-gold-hover);
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(224, 135, 19, 0.4);
  color: var(--color-white);
}

/* Primary Industrial Blue Button (Logo Upper Gear Blue) */
.btn-primary,
.btn-teal {
  background: var(--color-primary);
  color: var(--color-white);
  border-color: var(--color-primary);
  box-shadow: 0 4px 14px rgba(11, 79, 108, 0.25);
}

.btn-primary:hover,
.btn-teal:hover {
  background: var(--color-primary-dark);
  border-color: var(--color-primary-dark);
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(11, 79, 108, 0.38);
  color: var(--color-white);
}

/* Secondary Outline Primary Button */
.btn-outline-primary {
  background: transparent;
  color: var(--color-primary);
  border: 2px solid var(--color-primary);
}

.btn-outline-primary:hover {
  background: var(--color-primary);
  color: var(--color-white);
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(11, 79, 108, 0.2);
}

/* Outline Secondary White Button for Dark Banners */
.btn-outline-white {
  background: transparent;
  color: var(--color-white);
  border: 2px solid rgba(255, 255, 255, 0.6);
}

.btn-outline-white:hover {
  background: var(--color-white);
  color: var(--color-slate-900);
  border-color: var(--color-white);
  transform: translateY(-2px);
}

/* WhatsApp Brand Button */
.btn-whatsapp {
  background-color: #25D366;
  color: #FFFFFF;
  border-color: #25D366;
  box-shadow: 0 4px 14px rgba(37, 211, 102, 0.3);
}

.btn-whatsapp:hover {
  background-color: #20BA5A;
  transform: translateY(-2px);
  box-shadow: 0 8px 22px rgba(37, 211, 102, 0.45);
  color: #FFFFFF;
}

/* Sticky Download Brochure Floating Tab */
.sticky-brochure-btn {
  position: fixed;
  right: 0;
  top: 45%;
  transform: translateY(-50%);
  z-index: 990;
  background: var(--color-primary);
  color: var(--color-white);
  padding: 0.95rem 0.75rem;
  border-radius: 8px 0 0 8px;
  writing-mode: vertical-rl;
  text-orientation: mixed;
  font-weight: 700;
  font-size: 0.85rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  box-shadow: -4px 6px 20px rgba(11, 79, 108, 0.3);
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 0.6rem;
  transition: all var(--transition-fast);
  text-decoration: none;
}

.sticky-brochure-btn i {
  transform: rotate(90deg);
  font-size: 1.1rem;
  color: var(--color-gold);
}

.sticky-brochure-btn:hover {
  background: var(--color-gold);
  color: var(--color-white);
  padding-right: 1.1rem;
}

.sticky-brochure-btn:hover i {
  color: var(--color-white);
}

@media (max-width: 992px) {
  .sticky-brochure-btn {
    display: flex !important;
    top: 50%;
    padding: 0.8rem 0.55rem;
    font-size: 0.75rem;
    border-radius: 6px 0 0 6px;
    gap: 0.45rem;
    box-shadow: -2px 4px 15px rgba(11, 79, 108, 0.35);
  }

  .sticky-brochure-btn i {
    font-size: 0.95rem;
  }
}

@media (max-width: 480px) {
  .sticky-brochure-btn {
    top: 55%;
    padding: 0.7rem 0.45rem;
    font-size: 0.7rem;
    letter-spacing: 0.03em;
  }
}