:root {
  --midnight-indigo: #0a1c18;
  --deep-palace-blue: #112b25;
  --night-plum: #183f36;
  --burnished-brass: #c7a951;
  --desert-clay: #d16b49;
  --moonstone: #cbd8d3;
  --silk-sand: #e2e8e6;
  --oasis-jade: #265a4c;
  --lantern-amber: #e0a943;
  --soft-ivory: #f1f7f5;
  --muted-lavender: #9cb5ad;
  --primary-dark: #06120f;
}

* { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body {
  font-family: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  background: var(--midnight-indigo);
  color: #ffffff;
  line-height: 1.75;
  font-size: 1.05rem;
}
a {
  color: #ffffff;
}
h1, h2, h3 { font-family: "Cinzel", "Times New Roman", serif; font-weight:600; letter-spacing: 1px; }
h1 { font-size:3.6rem; line-height:1.15; }
h2 { font-size:2.4rem; line-height: 1.25; }
h3 { font-size: 1.7rem; line-height: 1.35; }
label, button, .micro { font-family: "Open Sans", sans-serif; text-transform:uppercase; letter-spacing:2px; font-size:0.8rem; font-weight:600; }

.compliance-bar {
  background: var(--midnight-indigo);
  color: #ffffff;
  padding:12px 24px;
  font-size:0.8rem;
  font-weight: 600;
  letter-spacing: 1px;
  text-align:center;
  border-bottom:1px solid var(--burnished-brass);
}
.compliance-bar span { color:#ffffff; }

header {
  background: var(--deep-palace-blue);
  border-bottom:1px solid var(--burnished-brass);
  position:sticky; top:0; z-index:100;
}
nav { max-width:1440px; margin:0 auto; padding:16px 24px; display:flex; align-items:center; justify-content:space-between; }
.brand { font-size:1.4rem; font-weight:700; color:#ffffff; text-decoration:none; letter-spacing: 1px; }
.brand-logo { height: 44px; width: auto; display: block; }
.footer-logo { height: 44px; width: auto; display: block; }
.nav-links { display:flex; gap:32px; }
.nav-links a { color:#ffffff; text-decoration:none; font-weight: 500; }
.cta { background:var(--burnished-brass); color:#ffffff; padding:10px 22px; border-radius:10px; text-decoration:none; font-weight:700; letter-spacing: 1px; }

.hero {
  min-height:calc(100vh - 48px);
  background-image:linear-gradient(rgba(10,28,24,0.45), rgba(10,28,24,0.65)), url('images/arabian-moon-gate.webp');
  background-size:cover; background-position:center;
  display:flex; align-items:flex-end; position:relative;
}
.hero-content { max-width:620px; padding:80px 24px; }
.hero-content .micro { color:#ffffff; margin-bottom:12px; }
.hero-content h1 { margin-bottom:20px; }
.hero-compliance { margin-top:24px; font-size:0.9rem; color:#ffffff; font-weight: 500; }

.game-chamber { max-width:1440px; margin:0 auto; padding:80px 24px; display:grid; grid-template-columns:30% 70%; gap:40px; }
.game-info { padding-right:24px; }
.game-frame {
  background:var(--deep-palace-blue);
  padding:16px; border:1px solid var(--burnished-brass);
}
.game-frame iframe { width:100%; aspect-ratio:16/9; border:none; background:#000; }

.disclosure-panel {
  max-width:1440px; margin:0 auto 80px; padding:40px 24px;
  background:var(--night-plum); border:1px solid var(--oasis-jade);
}
.disclosure-panel ul { columns:2; gap:40px; margin-top:20px; }

.story-chapter { max-width:1440px; margin:0 auto 120px; padding:0 24px; display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; }
.story-chapter.reverse { grid-template-columns:1fr 1fr; }
.story-chapter img { width:100%; height:auto; border-radius:4px; }

.palace-passage { max-width:1440px; margin:120px auto; padding:0 24px; display:grid; grid-template-columns:60% 40%; gap:40px; }
.palace-passage img { width:100%; }

.play-clearly { max-width:1440px; margin:0 auto 120px; padding:0 24px; }
.disclosure-row { display:flex; gap:32px; padding:32px 0; border-bottom:1px solid var(--deep-palace-blue); }
.disclosure-row:last-child { border-bottom:none; }
.disclosure-row .num { font-size:2rem; color:#ffffff; width:60px; font-weight: 700; }

footer { background:var(--deep-palace-blue); padding:80px 24px 40px; margin-top:120px; }
.footer-grid { max-width:1440px; margin:0 auto; display:grid; grid-template-columns:repeat(4,1fr); gap:40px; }
.footer-grid strong { font-family: "Cinzel", "Times New Roman", serif; font-size: 1.1rem; letter-spacing: 0.5px; }
.footer-bottom { max-width:1440px; margin:60px auto 0; padding-top:24px; border-top:1px solid var(--oasis-jade); text-align:center; font-size:0.9rem; }
.footer-address { font-style:normal; margin-bottom:12px; color:#ffffff; }

.btn-primary { background:var(--burnished-brass); color:#ffffff; padding:14px 32px; border-radius:10px; text-decoration:none; display:inline-block; font-weight:700; border:none; cursor:pointer; letter-spacing: 1px; }
.btn-secondary { background:transparent; color:#ffffff; padding:14px 32px; border:1px solid var(--moonstone); border-radius:10px; text-decoration:none; display:inline-block; cursor:pointer; font-weight: 700; letter-spacing: 1px; }

form { max-width:600px; margin:0 auto; }
input, textarea, select { width:100%; padding:14px; margin-bottom:20px; background:var(--deep-palace-blue); border:1px solid var(--moonstone); color:#ffffff; border-radius:8px; font-family: inherit; font-size: 1rem; }

/* Cookie Consent */
#cookie-consent-overlay {
  position: fixed;
  top: 0; left: 0; right: 0; bottom: 0;
  background: rgba(10, 28, 24, 0.9);
  z-index: 999999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
}

.cookie-consent-modal {
  background: var(--deep-palace-blue);
  border: 1px solid var(--burnished-brass);
  padding: 32px;
  max-width: 600px;
  width: 100%;
  border-radius: 12px;
  color: #ffffff;
  box-shadow: 0 10px 40px rgba(0,0,0,0.6);
  max-height: 90vh;
  overflow-y: auto;
}

.cookie-consent-modal h3 {
  margin-bottom: 16px;
  color: #ffffff;
}

.cookie-consent-modal p {
  margin-bottom: 24px;
  font-size: 0.95rem;
}

.cookie-consent-buttons {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}

.cookie-consent-buttons button {
  flex: 1;
  min-width: 140px;
}

.cookie-setting-item {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  margin-bottom: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid rgba(199, 169, 81, 0.2);
}

.cookie-setting-item:last-of-type {
  border-bottom: none;
  margin-bottom: 24px;
}

.cookie-setting-item p {
  margin-bottom: 0;
  margin-top: 4px;
  font-size: 0.85rem;
  color: #ffffff;
}

.cookie-setting-item input[type="checkbox"] {
  width: 24px;
  height: 24px;
  accent-color: var(--burnished-brass);
  cursor: pointer;
  flex-shrink: 0;
}

.cookie-setting-item input[type="checkbox"]:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.footer-btn-link {
  background: none; border: none; color: inherit; font: inherit; cursor: pointer; text-decoration: underline; padding: 0; margin: 0; display: inline; text-align: left;
}
.footer-btn-link:hover {
  text-decoration: none; color: #ffffff;
}

@media (max-width:1200px) { .game-chamber { grid-template-columns:1fr; } }
@media (max-width:768px) {
  .nav-links { display:none; }
  .hero-content h1 { font-size:2.6rem; }
  .story-chapter, .palace-passage { grid-template-columns:1fr; }
}