:root {
  --bg: #080706;
  --text: #eee8da;
  --muted: #b9b09f;
  --gold: #c99a3d;
  --faint: #7f7666;
  --font-display: 'Cinzel', Georgia, serif;
  --font-body: 'Source Sans 3', 'Segoe UI', sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; font-family: var(--font-body); font-size: 17px; line-height: 1.6; }
a { color: inherit; text-decoration: none; }
.wrap { width: min(1200px, calc(100% - 40px)); margin: 0 auto; }
.site-header { position: sticky; top: 0; z-index: 50; display: flex; align-items: center; justify-content: space-between; }
.logo { display: flex; align-items: center; gap: 12px; font-family: var(--font-display); letter-spacing: .16em; text-transform: uppercase; font-size: .86rem; font-weight: 700; }
.logo-mark { width: 34px; height: 34px; display: grid; place-items: center; border: 1px solid; border-radius: 50%; }
.logo-sub { display: block; margin-top: 2px; color: var(--faint); font-size: .62rem; letter-spacing: .14em; }
.site-nav { display: flex; align-items: center; flex-wrap: wrap; }
.site-nav a { font-size: .72rem; letter-spacing: .11em; text-transform: uppercase; }
.home-hero { min-height: min(780px, calc(100vh - 68px)); display: grid; align-items: center; position: relative; padding: 80px 0; background: linear-gradient(90deg,rgba(8,7,5,.96),rgba(8,7,5,.66),rgba(8,7,5,.92)), url('/assets/img/hero-background.png') center/cover no-repeat; }
.home-hero::after { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 67% 34%,transparent 0 25%,rgba(8,7,5,.48) 57%,rgba(8,7,5,.89)); pointer-events: none; }
.home-hero .wrap { position: relative; z-index: 2; }
.home-title { max-width: 1040px; margin: 10px 0 20px; color: #f2dfad; font-family: var(--font-display); font-size: clamp(2.8rem, 5.3vw, 5.8rem); line-height: .92; letter-spacing: -.05em; overflow-wrap: anywhere; text-wrap: balance; text-shadow: 0 18px 50px rgba(0,0,0,.85); }
.home-copy { max-width: 790px; margin: 0; color: #e3dac2; font-size: clamp(1.05rem, 2vw, 1.23rem); }
.actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 26px; }
.btn { display: inline-flex; align-items: center; justify-content: center; padding: 11px 16px; border: 1px solid rgba(201,154,61,.46); border-radius: 999px; color: #f5eacb; background: rgba(0,0,0,.26); font-size: .72rem; letter-spacing: .11em; text-transform: uppercase; }
.btn:hover { background: rgba(201,154,61,.14); box-shadow: 0 0 24px rgba(201,154,61,.15); }
.btn.primary { border-color: var(--gold); background: var(--gold); color: #14100b; font-weight: 800; }
.eyebrow { color: var(--gold); font-family: var(--font-display); font-size: .75rem; font-weight: 700; letter-spacing: .22em; text-transform: uppercase; }
.start-section, .desk-section { padding: clamp(58px, 8vw, 96px) 0; border-top: 1px solid rgba(201,154,61,.17); }
.start-section { background: linear-gradient(180deg,rgba(255,255,255,.02),transparent); }
.entry-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.entry { min-height: 176px; padding: 22px; border: 1px solid rgba(201,154,61,.34); border-radius: 12px; background: linear-gradient(180deg,rgba(30,23,15,.76),rgba(0,0,0,.38)); box-shadow: 0 20px 70px rgba(0,0,0,.28); transition: transform .18s ease,border-color .18s ease; }
.entry:hover { transform: translateY(-3px); border-color: rgba(228,189,103,.72); }
.entry b, .desk-card b { display: block; margin-bottom: 9px; color: #f0dba5; font-family: var(--font-display); font-size: 1rem; line-height: 1.15; }
.entry span, .desk-card p { color: #c9bea7; font-size: .95rem; }
.desk-section { background: #090807; }
.desk-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); border-top: 1px solid rgba(201,154,61,.28); }
.desk-card { display: grid; grid-template-columns: 48px 1fr; gap: 2px 18px; padding: 24px 16px 24px 0; border-bottom: 1px solid rgba(201,154,61,.18); }
.desk-card:nth-child(odd) { border-right: 1px solid rgba(201,154,61,.18); }
.desk-card:nth-child(even) { padding-left: 24px; }
.desk-card > span { grid-row: 1 / 3; color: var(--gold); font: 600 .72rem/1 var(--font-display); letter-spacing: .12em; }
.desk-card p { margin: 0; }
.footer { padding: 34px 0 42px; border-top: 1px solid rgba(201,154,61,.18); color: var(--faint); font-size: .88rem; }
.footer-grid { display: flex; justify-content: space-between; gap: 28px; }
.footer p { max-width: 720px; margin: 0; }
.footer a:hover { color: var(--gold); }

@media (max-width: 860px) {
  .entry-grid { grid-template-columns: 1fr; }
  .desk-grid { grid-template-columns: 1fr; }
  .desk-card:nth-child(odd) { border-right: 0; }
  .desk-card:nth-child(even) { padding-left: 0; }
  .footer-grid { flex-direction: column; gap: 12px; }
}

@media (max-width: 600px) {
  .wrap { width: min(100% - 28px, 1200px); }
  .home-hero { min-height: auto; padding: 62px 0; }
  .home-title { font-size: clamp(2.35rem, 12vw, 3.7rem); letter-spacing: -.045em; }
  .btn { width: 100%; }
}
