/* Premium visual layer shared by the public service pages. */
:root {
  --brand-950: #101b32;
  --brand-900: #172542;
  --brand-850: #20345a;
  --brand-800: #294675;
  --brand-700: #385d8f;
  --accent-700: #8a5a18;
  --accent-600: #a87324;
  --accent-500: #c9953d;
  --accent-300: #e7c47c;
  --surface-cream: #fbf8f1;
  --surface-subtle: #f4efe5;
  --border-light: #e6dccb;
  --border-medium: #d5c5ad;
  --text-main: #263247;
  --text-secondary: #536078;
  --text-muted: #788398;
  --font-sans: "Plus Jakarta Sans", "Avenir Next", "Segoe UI", sans-serif;
  --font-heading: "Cormorant Garamond", Georgia, serif;
}

body {
  background: var(--surface-cream);
}

h1, h2, h3, h4, h5, h6,
.section-title {
  letter-spacing: -0.015em;
}

.site-header {
  background: rgba(251, 248, 241, 0.96);
  border-bottom-color: rgba(201, 149, 61, 0.28);
}

.nav-link:hover,
.nav-link:focus-visible,
.dropdown-item:hover,
.dropdown-item:focus-visible {
  color: var(--accent-700);
}

.hero-section {
  background-color: var(--brand-950);
}

.btn-primary,
.btn-accent {
  background: linear-gradient(135deg, var(--accent-600), var(--accent-500));
  box-shadow: 0 8px 20px rgba(138, 90, 24, 0.2);
}

.btn-primary:hover,
.btn-accent:hover {
  background: linear-gradient(135deg, var(--accent-700), var(--accent-600));
  transform: translateY(-2px);
}

.card,
.offer-card,
.destination-card,
.holiday-card,
.hotel-card,
.visa-card {
  border-color: var(--border-light);
}

[data-reveal] {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 500ms ease, transform 500ms ease;
}

[data-reveal].is-visible {
  opacity: 1;
  transform: none;
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }

  [data-reveal] {
    opacity: 1;
    transform: none;
  }
}
