/* CasinoHubReview – White Theme + Orange Accent */
html { scroll-behavior: smooth; }

/* ── Primary Button (orange) ─────────────────────────────────────────────── */
.btn-primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.375rem;
  padding: 0.5rem 1.125rem;
  background-color: #F97316;
  color: #ffffff;
  font-weight: 700;
  font-size: 0.875rem;
  border-radius: 0.625rem;
  border: 2px solid #F97316;
  transition: background-color 0.15s, box-shadow 0.15s, transform 0.1s;
  cursor: pointer;
  text-decoration: none;
  white-space: nowrap;
}
.btn-primary:hover {
  background-color: #EA580C;
  border-color: #EA580C;
  box-shadow: 0 4px 14px rgb(249 115 22 / 0.35);
}
.btn-primary:active { transform: scale(0.98); }

/* ── Outline Button ──────────────────────────────────────────────────────── */
.btn-outline {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.375rem;
  padding: 0.5rem 1.125rem;
  background-color: transparent;
  color: #F97316;
  font-weight: 600;
  font-size: 0.875rem;
  border-radius: 0.625rem;
  border: 2px solid #F97316;
  transition: background-color 0.15s, box-shadow 0.15s;
  cursor: pointer;
  text-decoration: none;
  white-space: nowrap;
}
.btn-outline:hover {
  background-color: #FFF7ED;
  box-shadow: 0 2px 8px rgb(249 115 22 / 0.15);
}

/* ── Hero Buttons (on dark background) ──────────────────────────────────── */
.btn-hero-primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.75rem 2rem;
  background-color: #F97316;
  color: #ffffff;
  font-weight: 700;
  font-size: 1rem;
  border-radius: 0.75rem;
  border: 2px solid #F97316;
  transition: background-color 0.15s, box-shadow 0.15s, transform 0.1s;
  cursor: pointer;
  text-decoration: none;
}
.btn-hero-primary:hover {
  background-color: #EA580C;
  border-color: #EA580C;
  box-shadow: 0 6px 20px rgb(249 115 22 / 0.45);
}
.btn-hero-primary:active { transform: scale(0.98); }

.btn-hero-outline {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.75rem 2rem;
  background-color: transparent;
  color: #ffffff;
  font-weight: 600;
  font-size: 1rem;
  border-radius: 0.75rem;
  border: 2px solid rgba(255,255,255,0.45);
  transition: background-color 0.15s, border-color 0.15s;
  cursor: pointer;
  text-decoration: none;
}
.btn-hero-outline:hover {
  background-color: rgba(255,255,255,0.12);
  border-color: rgba(255,255,255,0.7);
}

/* ── Nav ─────────────────────────────────────────────────────────────────── */
.nav-link {
  display: inline-flex;
  align-items: center;
  padding: 0.375rem 0.625rem;
  font-size: 0.875rem;
  font-weight: 500;
  color: #4B5563;
  border-radius: 0.5rem;
  transition: color 0.15s, background-color 0.15s;
  text-decoration: none;
}
.nav-link:hover { color: #F97316; background-color: #FFF7ED; }
.nav-link.active { color: #F97316; font-weight: 700; background-color: #FFF7ED; }

.mobile-nav-link {
  display: block;
  padding: 0.625rem 0.75rem;
  font-size: 0.875rem;
  font-weight: 500;
  color: #4B5563;
  border-radius: 0.5rem;
  transition: color 0.15s, background-color 0.15s;
  text-decoration: none;
}
.mobile-nav-link:hover { color: #F97316; background-color: #FFF7ED; }

/* ── Utilities ───────────────────────────────────────────────────────────── */
.line-clamp-3 {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

:focus-visible { outline: 2px solid #F97316; outline-offset: 2px; }

/* Scrollbar */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: #f9fafb; }
::-webkit-scrollbar-thumb { background: #d1d5db; border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: #F97316; }

/* Print */
@media print {
  header, footer, #cookieConsent, .btn-primary, .btn-outline { display: none !important; }
}
