/* Direction: Gharkhoj Premier — navy and white with brushed gold, Playfair serif display over a clean sans */
/* Completed by the platform from the short form: both modes, every
   palette token, each text-on-ground pair at its floor. To restyle, write the
   short form again (the decisions in one :root) and it is completed again. */

:root {
  --canvas: #faf8f3;
  --surface: #ffffff;
  --surface-2: #f1ede2;
  --border: #dbd9d2;
  --border-strong: #b7b5ad;
  --ink: #0b1b3a;
  --muted: #4d5973;
  --accent: #c9a24a;
  --accent-hover: #ab8a3f;
  --accent-ink: #0b1b3a;
  --accent-text: #7a5a10;
  --accent-strong: #5f450a;
  --accent-soft: #f6eed6;
  --accent-border: #e4d1a7;
  --success: #15803d;
  --success-ink: #ffffff;
  --success-soft: #dfeadd;
  --success-strong: #137638;
  --warning: #b45309;
  --warning-ink: #ffffff;
  --warning-soft: #f2e4d7;
  --warning-strong: #a64c08;
  --danger: #b91c1c;
  --danger-ink: #ffffff;
  --danger-soft: #f2ded9;
  --danger-strong: #b91c1c;
  --chart-1: #af892e;
  --chart-2: #54a059;
  --chart-3: #158792;
  --chart-4: #6589da;
  --chart-5: #9a579e;
  --chart-6: #d67068;

  --x-band: #0b1b3a;
  --x-band-2: #14295a;
  --x-on-photo: #ffffff;
  --gradient-hero: linear-gradient(180deg, rgba(11, 27, 58, 0.78) 0%, rgba(11, 27, 58, 0.62) 45%, rgba(11, 27, 58, 0.92) 100%);
  --gradient-tile: linear-gradient(180deg, rgba(11, 27, 58, 0) 35%, rgba(11, 27, 58, 0.88) 100%);
  --font-display: "Playfair Display", Georgia, serif;
  --font-body: "Inter", system-ui, sans-serif;
  --display-weight: 600;
  --display-tracking: -0.01em;
  --radius-card: 18px;
  --radius-btn: 999px;
  --radius-input: 12px;
  --font-mono: "JetBrains Mono Variable", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  --font-sans: "Inter", system-ui, sans-serif;
  --eyebrow-tracking: 0.08em;
}

html[data-theme="dark"] {
  --canvas: #181409;
  --surface: #2f2c22;
  --surface-2: #242015;
  --border: #38352b;
  --border-strong: #5d5b53;
  --ink: #faf8f3;
  --muted: #a09d95;
  --accent: #c9a24a;
  --accent-hover: #d1b065;
  --accent-ink: #1c170a;
  --accent-text: #c9a24a;
  --accent-strong: #c9a24a;
  --accent-soft: #3f3317;
  --accent-border: #685426;
  --success: #15803d;
  --success-ink: #ffffff;
  --success-soft: #172c14;
  --success-strong: #58a474;
  --warning: #b45309;
  --warning-ink: #ffffff;
  --warning-soft: #3a2209;
  --warning-strong: #ca854f;
  --danger: #b91c1c;
  --danger-ink: #ffffff;
  --danger-soft: #3b160d;
  --danger-strong: #d16969;
  --chart-1: #c9a24a;
  --chart-2: #86d489;
  --chart-3: #09a2af;
  --chart-4: #a1bdfb;
  --chart-5: #b46fb7;
  --chart-6: #fda19a;
}

.site-nav { background: var(--x-band); color: var(--x-on-photo); }
.site-nav .btn-ghost { color: var(--x-on-photo); }
.site-nav .btn-ghost:hover, .nav-link:hover { background: color-mix(in srgb, var(--x-on-photo) 12%, transparent); }
.site-nav .btn-outline { background: transparent; color: var(--x-on-photo); border-color: color-mix(in srgb, var(--x-on-photo) 45%, transparent); }
.site-nav .btn-outline:hover { background: color-mix(in srgb, var(--x-on-photo) 12%, transparent); border-color: var(--accent); }
.nav-link { color: var(--x-on-photo); border-radius: 999px; padding: 0.5rem 0.9rem; font-size: 0.875rem; opacity: 0.88; }
.nav-link:hover { opacity: 1; }
.hero-scrim { background: var(--gradient-hero); }
.tile-scrim { background: var(--gradient-tile); }
.on-dark-card {
  border: 1px solid color-mix(in srgb, var(--x-on-photo) 16%, transparent);
  background: color-mix(in srgb, var(--x-on-photo) 6%, transparent);
  border-radius: 18px;
  transition: transform 0.25s ease, background 0.25s ease, border-color 0.25s ease;
}
.on-dark-card:hover { transform: translateY(-3px); background: color-mix(in srgb, var(--x-on-photo) 11%, transparent); border-color: var(--accent); }
.rate { display: inline-flex; align-items: center; gap: 0.25rem; border-radius: 999px; padding: 0.15rem 0.6rem; font-size: 0.8rem; font-weight: 700; background: var(--x-band); color: var(--x-on-photo); }
.rate svg { color: var(--accent); fill: var(--accent); }
.gold-rule { height: 3px; width: 3.5rem; background: var(--accent); border-radius: 3px; }
.lux-card { transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease; }
.lux-card:hover { transform: translateY(-4px); box-shadow: 0 18px 40px -18px color-mix(in srgb, var(--x-band) 45%, transparent); border-color: var(--accent); }
html.reduced-motion .lux-card:hover, html.reduced-motion .on-dark-card:hover { transform: none; }
.hero-in { animation: heroIn 0.8s ease both; }
@keyframes heroIn { from { transform: translateY(18px); } to { transform: none; } }
html.reduced-motion .hero-in { animation: none; }
