:root{
  --felt:#0d3b2c;
  --felt-deep:#072319;
  --cream:#f3ecdb;
  --card:#faf6ec;
  --brass:#c39b3f;
  --brass-d:#a8822d;
  --ink:#16241d;
  --muted:#6f7a72;
  --line:#e2dac4;
}

*{margin:0;padding:0;box-sizing:border-box}

html{scroll-behavior:smooth}

body{
  background:var(--felt);
  color:var(--cream);
  font-family:'Tajawal',system-ui,sans-serif;
  font-size:17px;
  line-height:1.8;
  -webkit-font-smoothing:antialiased;
}

.disp{font-family:'Reem Kufi',serif;font-weight:700;letter-spacing:0}

.wrap{max-width:920px;margin:0 auto;padding:0 24px}

/* ---------- header ---------- */
.nav{
  display:flex;align-items:center;justify-content:space-between;
  padding:22px 0;gap:16px;
}
.nav a{color:rgba(243,236,219,.72);text-decoration:none;font-weight:700;font-size:15px}
.nav a:hover{color:var(--brass)}
.nav .brand{display:flex;align-items:center;gap:10px;color:var(--cream);font-size:21px}
.nav .brand svg{width:30px;height:30px}
.nav .links{display:flex;gap:20px}

/* ---------- hero ---------- */
.hero{
  padding:52px 0 76px;text-align:center;position:relative;overflow:hidden;
  background:radial-gradient(120% 90% at 50% 0%,#12523d 0%,var(--felt) 55%,var(--felt-deep) 100%);
}
.hero .fan{width:190px;height:auto;margin:0 auto 26px;display:block}
.hero h1{font-size:clamp(52px,12vw,88px);line-height:1.15;margin-bottom:10px}
.hero .tag{font-size:clamp(17px,4vw,21px);color:rgba(243,236,219,.72);margin-bottom:34px}

/* signature: the four legal round sums */
.sums{
  display:flex;flex-wrap:wrap;gap:10px;justify-content:center;align-items:center;
  margin:0 auto;max-width:520px;
}
.sums .lbl{
  width:100%;font-size:13px;letter-spacing:.08em;color:rgba(243,236,219,.45);
  font-weight:700;margin-bottom:4px;
}
.sums b{
  font-family:'Reem Kufi',serif;font-size:26px;font-weight:700;
  color:var(--brass);border:1.5px solid rgba(195,155,63,.42);
  border-radius:999px;padding:6px 24px;background:rgba(195,155,63,.07);
}

/* ---------- games ---------- */
.games{background:var(--cream);color:var(--ink);padding:62px 0}
.games h2{font-size:30px;margin-bottom:8px;color:var(--ink)}
.games .lead{color:var(--muted);margin-bottom:34px;max-width:560px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}
.tile{
  background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;
}
.tile h3{font-family:'Reem Kufi',serif;font-size:22px;margin-bottom:8px}
.tile p{font-size:15.5px;color:#3f4a43;line-height:1.75}
.tile .pip{
  width:44px;height:44px;border-radius:13px;display:grid;place-items:center;
  margin-bottom:14px;font-size:20px;
}
.pip.green{background:var(--felt);color:var(--cream)}
.pip.brass{background:var(--brass);color:#2a1f06}

/* ---------- article pages ---------- */
.doc{background:var(--cream);color:var(--ink);padding:44px 0 72px;min-height:60vh}
.doc h1{font-family:'Reem Kufi',serif;font-size:36px;margin-bottom:6px}
.doc .updated{color:var(--muted);font-size:14.5px;margin-bottom:34px}
.doc h2{font-family:'Reem Kufi',serif;font-size:24px;margin:34px 0 10px;color:var(--ink)}
.doc h3{font-size:18px;margin:22px 0 6px}
.doc p,.doc li{color:#33403a;font-size:16.5px}
.doc ul{margin:10px 26px 10px 0}
.doc li{margin-bottom:7px}
.doc a{color:var(--brass-d);font-weight:700}
.doc hr{border:none;border-top:1px solid var(--line);margin:48px 0}
.doc .en{direction:ltr;text-align:left}
.doc .en ul{margin:10px 0 10px 26px}
.callout{
  background:#fff;border:1px solid var(--line);border-inline-start:4px solid var(--brass);
  border-radius:14px;padding:16px 18px;margin:20px 0;font-size:16px;
}

/* ---------- footer ---------- */
footer{padding:40px 0;text-align:center;color:rgba(243,236,219,.5);font-size:14.5px}
footer a{color:rgba(243,236,219,.75);text-decoration:none;font-weight:700}
footer a:hover{color:var(--brass)}
footer .fl{display:flex;gap:18px;justify-content:center;margin-bottom:14px;flex-wrap:wrap}

/* ---------- motion ---------- */
.rise{animation:rise .7s cubic-bezier(.2,.8,.2,1) both}
.rise:nth-child(2){animation-delay:.06s}
.rise:nth-child(3){animation-delay:.12s}
@keyframes rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){
  .rise{animation:none}
  html{scroll-behavior:auto}
}

@media (max-width:560px){
  .nav .links{gap:14px;font-size:14px}
  .hero{padding:36px 0 58px}
  .sums b{font-size:22px;padding:5px 18px}
}
