/* Wild Gaze Safaris – Design Tokens
   Fonts load via <link> in HTML (not @import) for faster first paint. */

:root {
  --font-display: 'Playfair Display', Georgia, 'Times New Roman', serif;
  --font-body: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-brand: 'Cinzel', Georgia, serif;
  --gold:        #b8941a;
  --gold-lt:     #e8b020;
  --gold-pale:   #f5d060;
  --orange:      #d45a00;
  --rust:        #c0390a;
  --olive:       #6b5a1e;
  --dark:        #1a1408;
  --dark2:       #26200e;
  --dark3:       #1e1808;
  --cream:       #fdf8ef;
  --section-bg:  #faf6ec;
  --card-bg:     #ffffff;
  --card-border: #e5dcc8;

  /* Improved contrast (WCAG-friendly on light backgrounds) */
  --text-body:   #3a3220;
  --text-light:  #524630;
  --text-muted:  #6e5e42;
  --wg-text-slate: #334155;
  --wg-text-slate-dark: #1e293b;
  --wg-title-bronze: #846933;
  --wg-title-bronze-alt: #9a7e3e;

  /* Cinematic text shield – disabled; full-photo overlay handles contrast */
  --wg-hero-text-shield: none;

  /* Hero – light gradient overlay (opacity 0.18–0.40), consistent on all slides */
  --wg-hero-overlay: linear-gradient(
    180deg,
    rgba(0, 0, 0, 0.40) 0%,
    rgba(0, 0, 0, 0.28) 32%,
    rgba(0, 0, 0, 0.18) 58%,
    rgba(0, 0, 0, 0) 100%
  );
  --wg-hero-text-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);

  /* Listing card image bridge – bottom band only */
  --wg-card-img-overlay: linear-gradient(
    to top,
    rgba(0, 0, 0, 0.52) 0%,
    rgba(0, 0, 0, 0.16) 45%,
    rgba(0, 0, 0, 0) 100%
  );
  --wg-soft-card-overlay: var(--wg-card-img-overlay);
  --wg-card-overlay-height: 25%;

  --wg-premium-card-shadow: 0 10px 30px rgba(132, 105, 51, 0.04), 0 1px 4px rgba(0, 0, 0, 0.01);
  --wg-premium-card-shadow-hover: 0 18px 40px rgba(132, 105, 51, 0.1), 0 4px 12px rgba(0, 0, 0, 0.04);
  --wg-premium-card-radius: 16px;
  --wg-premium-chip-bg: #fdfbf7;
  --wg-premium-chip-border: rgba(191, 161, 95, 0.25);
  --wg-premium-chip-text: #846933;

  --wg-img-filter: none;
  --wg-img-filter-hover: none;

  --wg-shadow-sm: 0 2px 14px rgba(26, 20, 8, 0.08);
  --wg-shadow-md: 0 10px 32px rgba(26, 20, 8, 0.14);
  --wg-shadow-lg: 0 20px 48px rgba(26, 20, 8, 0.18);

  --wg-radius-cut: polygon(0 0, calc(100% - 10px) 0, 100% 10px, 100% 100%, 10px 100%, 0 calc(100% - 10px));

  --nav-h: 64px;
  --top-h: 0px;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
  overflow-x: clip;
  background: var(--dark, #1a1408);
  margin: 0;
  padding: 0;
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
}

body {
  margin: 0;
  padding: 0;
  font-family: var(--font-body);
  color: var(--text-body);
  background: var(--cream);
  overflow-x: clip;
  max-width: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4, h5, h6,
[class*="title"]:not([class*="logo"]):not(.wg-home-hero-title),
[class*="heading"],
[class*="eyebrow"]:not(.wg-home-hero-eyebrow) {
  font-family: var(--font-display);
}

.navbar-wrap,
.navbar-wrap .logo-text,
.wg-home-hero,
.wg-home-hero .wg-home-hero-title,
.wg-home-hero .wg-home-hero-eyebrow {
  font-family: var(--font-brand), var(--font-body);
}
