/* dakhni.org — shared stylesheet (generated by build_site.py) */
:root{
  --gold:#A07020;
  --gold-deep:#6B4710;
  --gold-soft:#C9A968;
  --cream:#F2EDE2;
  --ivory:#FAF7EF;
  --ink:#1A1814;
  --ink-soft:#4A453C;
  --ink-faint:#8B8472;
  --rule:rgba(26,24,20,0.10);
  --rule-soft:rgba(26,24,20,0.05);
}
*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { background:var(--ivory); color:var(--ink); font-family:'EB Garamond',Georgia,serif; overflow-x:hidden; }
.flag-banner { display:flex; justify-content:center; margin:0 auto 1.8rem; line-height:0; }
.flag-banner img { width:auto; max-width:96px; height:auto; max-height:96px; object-fit:contain; object-position:center; display:block; opacity:.95; border:none; }
nav {
      position:sticky; top:0; z-index:200;
      background:rgba(250,247,239,0.92);
      backdrop-filter:saturate(140%) blur(8px);
      -webkit-backdrop-filter:saturate(140%) blur(8px);
      height:58px;
      display:flex; align-items:center; justify-content:space-between;
      padding:0 3rem; border-bottom:1px solid var(--rule);
    }
.nav-brand { display:inline-flex; align-items:center; gap:.65rem; font-family:'Cormorant Garamond',serif; font-size:1rem; font-weight:600; letter-spacing:.22em; color:var(--ink); text-decoration:none; }
.nav-links { display:flex; gap:2.2rem; list-style:none; }
.nav-links a { font-family:'Inter',sans-serif; font-size:.7rem; font-weight:400; letter-spacing:.18em; text-transform:uppercase; color:var(--ink-soft); text-decoration:none; transition:color .2s; padding-bottom:2px; border-bottom:1px solid transparent; }
.nav-links a:hover { color:var(--gold-deep); border-bottom-color:var(--gold); }
.hero {
      background:var(--ivory);
      padding:7rem 2rem 6rem; text-align:center;
      border-bottom:1px solid var(--rule);
      position:relative; overflow:hidden;
    }
.hero::after {
      content:''; position:absolute; inset:0;
      background:url('/assets/dakhni-pattern.png') repeat;
      background-size:120px;
      opacity:0.06; pointer-events:none; z-index:0;
    }
.hero-inner { position:relative; z-index:1; max-width:680px; margin:0 auto; }
.seal-img { width:120px; height:120px; object-fit:contain; margin:0 auto 1.6rem; display:block; opacity:0; animation:rise .9s ease forwards .1s; }
.hero-urdu { font-family:'Lateef',serif; font-size:clamp(1.6rem,3.8vw,2.4rem); color:var(--gold-deep); opacity:0; animation:rise .9s ease forwards .3s; line-height:1.5; font-weight:400; }
.hero-rule { width:64px; height:1px; background:var(--gold); margin:1.4rem auto; opacity:0; animation:rise .8s ease forwards .5s; }
.hero-title { font-family:'Cormorant Garamond',serif; font-size:clamp(2.4rem,6vw,4rem); font-weight:500; color:var(--ink); letter-spacing:.18em; line-height:1.1; opacity:0; animation:rise 1s ease forwards .65s; }
.hero-subtitle { font-family:'Inter',sans-serif; font-size:clamp(.66rem,1.4vw,.76rem); font-weight:400; letter-spacing:.32em; text-transform:uppercase; color:var(--ink-faint); margin-top:1rem; opacity:0; animation:rise .8s ease forwards .85s; }
.hero-desc { font-style:italic; font-size:clamp(1rem,1.8vw,1.12rem); color:var(--ink-soft); line-height:1.9; max-width:520px; margin:2rem auto 0; opacity:0; animation:rise .8s ease forwards 1.05s; }
.hero-btns { display:flex; gap:.8rem; justify-content:center; flex-wrap:wrap; margin-top:2.6rem; opacity:0; animation:rise .8s ease forwards 1.25s; }
.btn-primary { font-family:'Inter',sans-serif; font-size:.7rem; font-weight:500; letter-spacing:.2em; text-transform:uppercase; padding:.95rem 2.1rem; background:var(--ink); color:var(--ivory); border:1px solid var(--ink); cursor:pointer; text-decoration:none; transition:all .25s; display:inline-block; }
.btn-primary:hover { background:transparent; color:var(--ink); }
.btn-secondary { font-family:'Inter',sans-serif; font-size:.7rem; font-weight:500; letter-spacing:.2em; text-transform:uppercase; padding:.95rem 2.1rem; background:transparent; color:var(--ink); border:1px solid var(--rule); cursor:pointer; text-decoration:none; transition:all .25s; display:inline-block; }
.btn-secondary:hover { border-color:var(--gold); color:var(--gold-deep); }
.city-strip { background:var(--cream); padding:1.4rem 2rem; display:flex; flex-wrap:wrap; gap:.5rem 1.4rem; justify-content:center; align-items:center; border-bottom:1px solid var(--rule); }
.city-strip-label { font-family:'Inter',sans-serif; font-size:.58rem; font-weight:500; letter-spacing:.35em; text-transform:uppercase; color:var(--ink-faint); width:100%; text-align:center; margin-bottom:.3rem; }
.city { font-family:'Cormorant Garamond',serif; font-size:.95rem; font-weight:500; letter-spacing:.06em; color:var(--ink-soft); transition:color .2s; cursor:default; text-decoration:none; }
a.city { cursor:pointer; }
.city:hover { color:var(--gold-deep); }
.city-sep { color:var(--gold); font-size:.45rem; }
.sec-label { font-family:'Inter',sans-serif; font-size:.62rem; font-weight:500; letter-spacing:.38em; text-transform:uppercase; color:var(--gold-deep); display:block; margin-bottom:.9rem; }
.sec-title { font-family:'Cormorant Garamond',serif; font-weight:500; font-size:clamp(1.6rem,3vw,2.3rem); color:var(--ink); line-height:1.25; letter-spacing:.02em; }
.sec-title span { display:block; color:var(--ink-soft); font-family:'EB Garamond',serif; font-style:italic; font-size:.7em; font-weight:400; margin-top:.5em; letter-spacing:0; }
.h-rule { border:none; border-top:1px solid var(--rule); margin:0; }
.diamond-rule { display:flex; align-items:center; gap:.8rem; padding:0 3rem; }
.diamond-rule::before, .diamond-rule::after { content:''; flex:1; height:1px; background:var(--rule); }
.diamond { width:6px; height:6px; background:var(--gold); transform:rotate(45deg); flex-shrink:0; }
.pillars-wrap { padding:6rem 3rem 6rem; max-width:1240px; margin:0 auto; }
.pillars-hdr { text-align:center; margin-bottom:4rem; }
.pillars-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:1px; background:var(--rule); border:1px solid var(--rule); }
.pillar { background:var(--ivory); padding:2.4rem 2rem; text-decoration:none; color:inherit; display:block; transition:background .25s; }
.pillar:hover { background:var(--cream); }
.pillar-num { font-family:'Inter',sans-serif; font-size:.6rem; font-weight:500; letter-spacing:.32em; text-transform:uppercase; color:var(--gold-deep); display:block; margin-bottom:1rem; }
.pillar-icon { font-size:1.4rem; display:block; margin-bottom:.8rem; opacity:.7; filter:grayscale(.3); }
.pillar-name { font-family:'Cormorant Garamond',serif; font-size:1.25rem; font-weight:500; color:var(--ink); margin-bottom:.7rem; letter-spacing:.02em; }
.pillar-text { font-size:.95rem; line-height:1.75; color:var(--ink-soft); }
.pillar-link { display:inline-block; margin-top:1.2rem; font-family:'Inter',sans-serif; font-size:.6rem; font-weight:500; letter-spacing:.22em; text-transform:uppercase; color:var(--gold-deep); border-bottom:1px solid var(--gold); padding-bottom:2px; }
.dynasties-sec {
      position:relative;
      background:var(--cream);
      border-top:1px solid var(--rule);
      border-bottom:1px solid var(--rule);
      overflow:hidden;           
      padding:6rem 3rem;
      text-align:center;
    }
.dynasties-seal-bg {
      position:absolute;
      right:-120px;
      top:50%;
      transform:translateY(-50%);
      width:480px;
      height:auto;
      opacity:0.10;
      pointer-events:none;
      mix-blend-mode:multiply;
    }
.dynasties-sec::after {
      content:'';
      position:absolute;
      right:0; top:0; bottom:0;
      width:1px;
      background:var(--gold);
      opacity:0.4;
    }
.dynasties-inner {
      position:relative; z-index:1;
      max-width:680px;
      margin:0 auto;
    }
.dynasty-list { margin-top:2.4rem; display:flex; flex-direction:column; gap:1.4rem; text-align:left; }
.dynasty-note { font-family:'EB Garamond',Georgia,serif; font-size:.95rem; color:var(--ink-soft); line-height:1.7; margin-top:.4rem; max-width:62ch; }
.chrono-wrap { padding:5rem 3rem 5.5rem; max-width:1100px; margin:0 auto; }
.chrono-inner { text-align:center; }
.chrono-list { list-style:none; counter-reset:c; margin:3rem auto 0; max-width:780px; padding:0; text-align:left; border-top:1px solid var(--rule); }
.chrono-list li { display:grid; grid-template-columns:90px 1fr; gap:1.4rem; padding:1.1rem 0; border-bottom:1px solid var(--rule); align-items:baseline; }
.chrono-year { font-family:'Cormorant Garamond',serif; font-size:1.1rem; font-weight:600; color:var(--gold-deep); letter-spacing:.04em; }
.chrono-text { font-family:'EB Garamond',Georgia,serif; font-size:.98rem; line-height:1.7; color:var(--ink-soft); }
@media (max-width:560px) {
      .chrono-list li { grid-template-columns:1fr; gap:.2rem; }
    }
.lang-panel { max-width:1100px; margin:0 auto; padding:5rem 3rem 3rem; text-align:center; }
.lang-lead { font-family:'EB Garamond',Georgia,serif; font-style:italic; font-size:1.1rem; line-height:1.85; color:var(--ink-soft); max-width:62ch; margin:1.8rem auto 2.6rem; }
.lang-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:1px; background:var(--rule); border:1px solid var(--rule); text-align:left; }
.lang-card { background:var(--ivory); padding:1.8rem 1.6rem; }
.lang-card-eyebrow { font-family:'Inter',sans-serif; font-size:.6rem; font-weight:500; letter-spacing:.32em; text-transform:uppercase; color:var(--gold-deep); display:block; margin-bottom:.7rem; }
.lang-card-title { font-family:'Cormorant Garamond',serif; font-size:1.1rem; font-weight:600; color:var(--ink); margin-bottom:.6rem; letter-spacing:.02em; }
.lang-card p { font-family:'EB Garamond',Georgia,serif; font-size:.95rem; line-height:1.75; color:var(--ink-soft); }
@media (max-width:600px) { .lang-panel { padding:3.5rem 1.4rem 2rem; } }
.dynasty-item { display:flex; align-items:flex-start; gap:1rem; }
.dynasty-dot { width:5px; height:5px; background:var(--gold-deep); transform:rotate(45deg); flex-shrink:0; margin-top:.7rem; }
.dynasty-name { font-family:'Cormorant Garamond',serif; font-size:1.15rem; font-weight:500; color:var(--ink); letter-spacing:.03em; }
.dynasty-dates { font-family:'EB Garamond',serif; font-style:italic; font-size:.95rem; color:var(--ink-soft); margin-top:.2rem; }
.quiz-wrap { background:var(--cream); padding:6rem 3rem; border-top:2px solid var(--gold-soft); }
.quiz-inner { max-width:1100px; margin:0 auto; display:grid; grid-template-columns:1fr 1fr; gap:4rem; align-items:center; }
.quiz-eyebrow { font-family:'Inter',sans-serif; font-size:.62rem; font-weight:500; letter-spacing:.38em; text-transform:uppercase; color:var(--gold-deep); margin-bottom:1rem; display:block; }
.quiz-title { font-family:'Cormorant Garamond',serif; font-weight:500; font-size:clamp(1.9rem,3.4vw,2.8rem); color:var(--ink); line-height:1.2; margin-bottom:1.2rem; letter-spacing:.02em; }
.quiz-title em { font-style:italic; color:var(--gold-deep); font-weight:400; }
.quiz-body { font-style:italic; font-size:1.05rem; color:var(--ink-soft); line-height:1.9; }
.quiz-tags { display:flex; flex-wrap:wrap; gap:.5rem; margin-top:1.4rem; }
.quiz-tag { font-family:'Inter',sans-serif; font-size:.62rem; font-weight:400; letter-spacing:.08em; padding:.32rem .8rem; border:1px solid var(--rule); color:var(--ink-soft); }
.quiz-card { background:var(--cream); border:1px solid var(--rule); padding:2rem; }
.quiz-q { font-family:'Cormorant Garamond',serif; font-size:1.05rem; line-height:1.5; color:var(--ink); margin-bottom:1.2rem; font-weight:500; }
.quiz-opts { display:flex; flex-direction:column; gap:.5rem; }
.quiz-opt { font-family:'EB Garamond',serif; font-size:.98rem; padding:.7rem 1.1rem; background:var(--ivory); border:1px solid var(--rule); border-left:2px solid transparent; color:var(--ink-soft); cursor:pointer; text-align:left; transition:all .2s; }
.quiz-opt:hover { border-left-color:var(--gold); color:var(--ink); padding-left:1.4rem; }
.quiz-opt.sel { border-color:var(--gold-deep); border-left-color:var(--gold-deep); color:var(--ink); background:white; }
.quiz-note { margin-top:1.1rem; font-family:'Inter',sans-serif; font-size:.58rem; font-weight:400; letter-spacing:.22em; text-transform:uppercase; color:var(--ink-faint); text-align:center; }
.poetry-wrap { background:var(--cream); padding:6rem 2rem; text-align:center; border-top:1px solid var(--rule); border-bottom:1px solid var(--rule); }
.poetry-inner { max-width:660px; margin:0 auto; }
.poetry-urdu { font-family:'Lateef',serif; font-size:clamp(1.6rem,3.6vw,2.4rem); color:var(--gold-deep); direction:rtl; line-height:1.9; margin-bottom:1.4rem; font-weight:400; }
.poetry-trans { font-style:italic; font-size:clamp(1rem,2vw,1.15rem); color:var(--ink-soft); line-height:1.9; }
.poetry-attr { margin-top:1.6rem; font-family:'Inter',sans-serif; font-size:.62rem; font-weight:500; letter-spacing:.28em; text-transform:uppercase; color:var(--ink-faint); }
footer { background:var(--ink); padding:3.5rem 3rem 2.5rem; text-align:center; }
.ft-name { font-family:'Cormorant Garamond',serif; font-size:1.1rem; font-weight:500; letter-spacing:.22em; color:var(--ivory); margin-bottom:.5rem; }
.ft-tagline { font-style:italic; font-size:.92rem; color:rgba(250,247,239,0.55); margin-bottom:2rem; }
.ft-links { display:flex; gap:1.8rem; justify-content:center; list-style:none; flex-wrap:wrap; margin-bottom:2rem; }
.ft-links a { font-family:'Inter',sans-serif; font-size:.62rem; font-weight:400; letter-spacing:.22em; text-transform:uppercase; color:rgba(250,247,239,0.5); text-decoration:none; transition:color .2s; }
.ft-links a:hover { color:var(--gold-soft); }
.ft-divider { width:48px; height:1px; background:rgba(201,169,104,0.3); margin:0 auto 1.6rem; }
.ft-copy { font-family:'Inter',sans-serif; font-size:.6rem; font-weight:300; letter-spacing:.1em; color:rgba(250,247,239,0.3); }
@keyframes rise { from{opacity:0;transform:translateY(16px)} to{opacity:1;transform:translateY(0)} }
.reveal { opacity:0; transform:translateY(22px); transition:opacity .65s ease,transform .65s ease; }
.reveal.visible { opacity:1; transform:translateY(0); }
@media(max-width:800px){
      nav { padding:0 1.2rem; } .nav-links { display:none; }
      .pillars-wrap { padding:3rem 1rem 4rem; }
      .dynasties-sec { padding:4rem 1.5rem; }
      .dynasties-seal-bg { width:320px; right:-80px; opacity:0.13; }
      .quiz-inner { grid-template-columns:1fr; gap:2.5rem; }
      .quiz-wrap { padding:4rem 1.4rem; }
      .diamond-rule { padding:0 1.4rem; }
      footer { padding:2.5rem 1.4rem; }
    }
.nav-mark{width:30px;height:30px;object-fit:contain;flex-shrink:0;display:block;transition:transform .4s ease;}
.nav-brand:hover .nav-mark{transform:rotate(8deg);}
.nav-toggle{display:none;background:transparent;border:none;cursor:pointer;padding:.5rem;width:42px;height:42px;flex-direction:column;justify-content:center;align-items:center;gap:5px;margin-left:auto;}
.nav-toggle span{display:block;width:22px;height:2px;background:var(--ink);border-radius:1px;transition:transform .25s ease, opacity .25s ease;}
.nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0;}
.nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
@media (max-width:880px){
      nav{padding:0 1.2rem;flex-wrap:wrap;height:auto;min-height:58px;align-items:center;}
      .nav-toggle{display:flex;}
      .nav-links{order:3;display:none;flex-direction:column;align-items:flex-start;width:100%;gap:0;padding:.5rem 0 1rem;border-top:1px solid var(--rule);background:rgba(250,247,239,0.98);margin:.4rem -1.2rem 0;padding-left:1.4rem;}
      .nav-links.open{display:flex;position:fixed;top:58px;left:0;right:0;bottom:0;width:auto;margin:0;padding:.6rem 1.4rem calc(1.4rem + env(safe-area-inset-bottom));overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;z-index:190;}
      body.menu-open{overflow:hidden;}
      body.menu-open nav{-webkit-backdrop-filter:none;backdrop-filter:none;}
      .nav-links li{width:100%;border-bottom:1px solid var(--rule-soft);}
      .nav-links li:last-child{border-bottom:none;}
      .nav-links a{display:block;padding:1rem 0;font-size:.72rem;letter-spacing:.18em;width:100%;}
    }
.nav-links > li { position:relative; }
.nav-links > li > a { padding:1.05rem 0; display:inline-block; border-bottom:1px solid transparent; }
.nav-links > li > a:hover { color:var(--gold-deep); border-bottom-color:var(--gold); }
.nav-links > li.has-dropdown > a:hover { border-bottom-color:transparent; }
.has-dropdown > a::after {
      content:'▾'; margin-left:.32em; font-size:.55em; color:var(--gold,#A07020);
      position:relative; top:-1px; display:inline-block;
      transition:transform .2s ease;
    }
.has-dropdown:hover > a::after { transform:translateY(2px); }
.dropdown {
      position:absolute; top:100%; left:0;
      transform:translateY(-4px);
      min-width:210px;
      background:rgba(250,247,239,0.98);
      backdrop-filter:saturate(140%) blur(10px);
      -webkit-backdrop-filter:saturate(140%) blur(10px);
      border:1px solid var(--rule,rgba(26,24,20,0.10));
      border-top:2px solid var(--gold,#A07020);
      list-style:none; padding:.4rem 0; margin:0;
      opacity:0; pointer-events:none;
      transition:opacity .22s ease, transform .22s ease;
      z-index:250;
      box-shadow:0 10px 30px rgba(26,24,20,0.10);
    }
.has-dropdown:hover > .dropdown,
    .has-dropdown:focus-within > .dropdown {
      opacity:1; pointer-events:auto;
      transform:translateY(0);
    }
.dropdown li { width:100%; }
.dropdown a {
      display:block; padding:.7rem 1.4rem;
      font-family:'Inter',sans-serif; font-size:.64rem; font-weight:400;
      letter-spacing:.16em; text-transform:uppercase;
      color:var(--ink-soft,#4A453C); text-decoration:none;
      border-bottom:none !important;
      transition:background .15s, color .15s;
      white-space:nowrap;
    }
.dropdown a:hover { background:var(--cream,#F2EDE2); color:var(--gold-deep,#6B4710); }
@media (max-width:880px){
      .has-dropdown > a::after { content:''; }
      .dropdown{
        position:static; opacity:1; pointer-events:auto; transform:none;
        background:transparent; border:none; box-shadow:none;
        padding:0 0 .5rem 1.2rem; transition:none; min-width:0;
      }
      .dropdown a { padding:.55rem 0; font-size:.64rem; letter-spacing:.14em; }
    }
.crumb { max-width:1100px; margin:1.8rem auto .4rem; padding:0 1.4rem; }
.page-hero { padding:5.5rem 2rem 4rem; }
.page-hero-title { letter-spacing:.04em; line-height:1.15; }
.page-hero-title em { font-style:italic; color:var(--gold-deep); font-weight:400; }
.page-hero-sub { font-size:1.1rem; max-width:600px; }
.h-section { padding:0; max-width:none; }
.h-entry {
      display:grid;
      grid-template-columns:minmax(260px, 1fr) 1.55fr;
      gap:3rem;
      align-items:start;
      max-width:1180px;
      margin:0 auto;
      padding:3.5rem 2rem;
      border-bottom:1px solid var(--rule-soft);
    }
.h-entry:last-of-type { border-bottom:none; }
.h-entry:nth-of-type(even) .h-aside { order:2; }
.h-entry:nth-of-type(even) .h-text { order:1; }
.h-entry > .h-figure { margin:0; align-self:start; }
.h-entry > .h-figure img { width:100%; height:auto; display:block; border:1px solid var(--rule); }
.h-entry > .h-figure figcaption {
      font-family:'Inter',sans-serif; font-size:.58rem;
      letter-spacing:.18em; text-transform:uppercase;
      color:var(--ink-faint); margin-top:.7rem; line-height:1.7;
    }
.h-entry:nth-of-type(even) > .h-figure { order:2; }
.h-entry:nth-of-type(even) > .h-text { order:1; }
@media (max-width:820px) {
      .h-entry {
        grid-template-columns:1fr;
        gap:2rem;
        padding:2.6rem 1.2rem;
      }
      .h-entry .h-aside,
      .h-entry .h-text,
      .h-entry .h-figure { order:initial !important; }
    }
.h-section > section.h-entry:only-of-type > .h-text > .h-numeral,
    .h-section > section.h-entry:only-of-type > .h-text > .h-eyebrow,
    .h-section > section.h-entry:only-of-type > .h-text > .h-title,
    .h-section > section.h-entry:only-of-type > .h-text > .h-sub { display:none; }
.h-text .h-body p {
      font-family:'EB Garamond',Georgia,serif;
      font-size:1.08rem;
      line-height:1.85;
      color:var(--ink-soft);
      margin-bottom:1.3rem;
    }
.h-text .h-body > p:first-of-type::first-letter {
      font-family:'Cormorant Garamond',serif;
      font-size:3rem;
      float:left;
      line-height:.9;
      padding:.06em .14em 0 0;
      color:var(--gold-deep);
      font-weight:500;
    }
.h-text .h-tags { margin-top:1.6rem; display:flex; flex-wrap:wrap; gap:.5rem; }
.h-text .h-tag {
      font-family:'Inter',sans-serif; font-size:.6rem; font-weight:400;
      letter-spacing:.1em; padding:.4rem .85rem;
      border:1px solid var(--rule); color:var(--ink-soft); background:var(--ivory);
    }
.h-aside {
      background:var(--cream);
      border:1px solid var(--rule);
      padding:1.8rem 1.6rem;
      position:sticky; top:78px;
    }
@media (max-width:820px) { .h-aside { position:static; } }
.h-aside-label {
      font-family:'Inter',sans-serif; font-size:.58rem; font-weight:500;
      letter-spacing:.32em; text-transform:uppercase;
      color:var(--gold-deep); display:block; margin-bottom:1rem;
    }
.h-list { list-style:none; padding:0; margin:0; }
.h-list li {
      padding:.75rem 0;
      border-bottom:1px solid var(--rule-soft);
      font-family:'EB Garamond',Georgia,serif;
      font-size:.94rem; line-height:1.55; color:var(--ink-soft);
    }
.h-list li:last-child { border-bottom:none; }
.h-key {
      display:block;
      font-family:'Cormorant Garamond',serif;
      font-weight:600; color:var(--ink);
      margin-bottom:.2rem;
      letter-spacing:.02em;
    }
.h-aside-note {
      margin-top:1rem;
      font-family:'EB Garamond',Georgia,serif;
      font-style:italic; font-size:.92rem;
      color:var(--ink-faint); line-height:1.7;
    }
.article { max-width:760px; margin:0 auto; padding:3.2rem 1.4rem 2rem; }
.article > p { font-family:'EB Garamond',Georgia,serif; font-size:1.1rem; line-height:1.85; color:var(--ink-soft); margin-bottom:1.3rem; }
.article > .crumb + p::first-letter,
    .article > p:not(.crumb):first-of-type::first-letter {
      font-family:'Cormorant Garamond',serif;
      font-size:3.2em; float:left; line-height:.88;
      padding:.06em .14em 0 0;
      color:var(--gold-deep); font-weight:500;
    }
.article h2 {
      font-family:'Cormorant Garamond',serif;
      font-size:1.7rem; font-weight:500;
      color:var(--ink);
      margin:2.8rem 0 1rem;
      letter-spacing:.02em;
      padding-top:1.8rem;
      border-top:1px solid var(--rule-soft);
    }
.article h2:first-of-type { border-top:none; padding-top:0; margin-top:1.8rem; }
.article h2 em { color:var(--gold-deep); font-style:italic; font-weight:400; }
.article h3 {
      font-family:'Cormorant Garamond',serif;
      font-size:1.22rem; font-weight:500; color:var(--ink);
      margin:1.8rem 0 .7rem; letter-spacing:.02em;
    }
.article blockquote {
      background:var(--cream);
      border-left:3px solid var(--gold);
      padding:1.2rem 1.4rem 1.2rem 1.7rem;
      margin:2rem 0;
      font-family:'EB Garamond',Georgia,serif;
      font-style:italic;
      font-size:1.08rem;
      color:var(--ink-soft);
      line-height:1.75;
    }
.article ul, .article ol { padding-left:1.4rem; margin-bottom:1.3rem; color:var(--ink-soft); }
.article ul li, .article ol li { margin-bottom:.6rem; line-height:1.75; }
.article .facts {
      display:flex; flex-wrap:wrap; gap:.5rem;
      margin:2rem 0 1rem;
    }
.article .fact {
      font-family:'Inter',sans-serif; font-size:.6rem; font-weight:400;
      letter-spacing:.1em; padding:.4rem .85rem;
      border:1px solid var(--rule); color:var(--ink-soft); background:var(--cream);
    }
.lang-divider {
      max-width:1180px; margin:0 auto;
      padding:4.5rem 2rem 1rem;
      text-align:center;
      border-top:1px solid var(--rule-soft);
    }
.lang-divider:first-of-type { border-top:none; }
.lang-divider-eyebrow {
      font-family:'Inter',sans-serif; font-size:.6rem; font-weight:500;
      letter-spacing:.36em; text-transform:uppercase;
      color:var(--gold-deep); display:block; margin-bottom:1rem;
    }
.lang-divider-urdu {
      font-family:'Lateef',serif;
      font-size:clamp(2rem,4.5vw,3rem);
      color:var(--gold-deep); line-height:1.4; margin-bottom:.4rem;
    }
.lang-divider-title {
      font-family:'Cormorant Garamond',serif;
      font-size:clamp(1.5rem,3vw,2.1rem);
      color:var(--ink); font-weight:500; letter-spacing:.03em;
    }
.lang-divider-sub {
      font-family:'EB Garamond',Georgia,serif;
      font-style:italic; color:var(--ink-faint);
      max-width:600px; margin:1rem auto 0; line-height:1.8;
    }
.lang-divider-rule { width:50px; height:1px; background:var(--gold); margin:1.2rem auto 0; }
.lang-divider + .h-section .h-entry:first-of-type .h-text > .h-numeral,
    .lang-divider + .h-section .h-entry:first-of-type .h-text > .h-eyebrow { display:none; }
.h-text > .h-title {
      font-family:'Cormorant Garamond',serif;
      font-size:clamp(1.4rem,2.4vw,1.85rem);
      font-weight:500; letter-spacing:.02em;
      line-height:1.25;
      color:var(--ink);
      margin-bottom:.6rem;
    }
.h-text > .h-title em { color:var(--gold-deep); font-style:italic; }
.h-text > .h-eyebrow {
      font-family:'Cormorant Garamond',serif;
      font-style:italic; color:var(--ink-faint);
      font-size:1rem; margin-bottom:.6rem; display:block;
    }
.h-text > .h-numeral {
      font-family:'Inter',sans-serif; font-size:.58rem; font-weight:500;
      letter-spacing:.32em; text-transform:uppercase;
      color:var(--gold-deep); display:block; margin-bottom:.6rem;
    }
.h-text > .h-sub {
      font-family:'EB Garamond',Georgia,serif;
      font-style:italic; color:var(--ink-soft);
      margin-bottom:1.4rem; line-height:1.7;
    }
.subnav {
      max-width:1180px; margin:5rem auto 0;
      padding:0 1.4rem 5rem;
      display:grid; grid-template-columns:1fr 1fr 1fr;
      gap:1rem;
      background:transparent; border:none;
    }
.subnav > a, .subnav > div {
      background:var(--cream);
      border:1px solid var(--rule);
      padding:1.4rem 1.6rem;
      text-decoration:none;
      color:var(--ink-soft);
      transition:background .2s, border-color .2s;
    }
.subnav > a:hover { background:var(--ivory); border-color:var(--gold); }
.subnav-eyebrow {
      display:block;
      font-family:'Inter',sans-serif; font-size:.54rem; font-weight:500;
      letter-spacing:.3em; text-transform:uppercase;
      color:var(--ink-faint); margin-bottom:.4rem;
    }
.subnav-title {
      font-family:'Cormorant Garamond',serif;
      font-size:1.05rem; font-weight:500; color:var(--ink);
    }
.subnav .index { text-align:center; }
.subnav .next { text-align:right; }
@media (max-width:600px){
      .subnav { grid-template-columns:1fr; }
      .subnav .next { text-align:left; }
    }
.nav-links > li > a[aria-current="page"] {
      color:var(--gold-deep);
      border-bottom-color:var(--gold);
    }
.nav-links > li.has-dropdown > a[aria-current="page"] {
      border-bottom-color:var(--gold);
    }
.dropdown a[aria-current="page"] {
      background:var(--cream);
      color:var(--gold-deep);
      font-weight:500;
    }
@media (max-width:880px){
      .nav-links > li > a[aria-current="page"] {
        background:linear-gradient(90deg, var(--cream) 0%, transparent 100%);
      }
    }
.h-wrap {
      max-width:1180px;
      margin:0 auto;
      padding:0 0 2rem;
    }
.h-wrap > .h-entry { padding-left:1.4rem; padding-right:1.4rem; }
.h-figure figcaption {
      max-width:520px;
    }
.crumb a, .crumb span { display:inline-block; }
@media (max-width:880px) {
      .page-hero { padding:3.4rem 1.2rem 2.6rem; }
      .page-hero-title { font-size:clamp(1.6rem, 7vw, 2.2rem); letter-spacing:.04em; }
      .page-hero-sub { font-size:1rem; line-height:1.7; }
      .page-hero-eyebrow { font-size:.56rem; letter-spacing:.28em; }
    }
@media (max-width:880px) {
      .article { padding:2.4rem 1.2rem 2rem; }
      .article > p, .h-text .h-body p { font-size:1.04rem; line-height:1.78; }
      .article h2 { font-size:1.45rem; margin-top:2.2rem; padding-top:1.4rem; }
      .article h3 { font-size:1.12rem; }
      .article blockquote { font-size:1rem; padding:1rem 1.2rem 1rem 1.4rem; }
    }
@media (max-width:600px) {
      .card-grid { grid-template-columns:1fr !important; }
      .card { padding:1.8rem 1.4rem; }
      .card-title { font-size:1.25rem; }
    }
@media (max-width:600px) {
      .subnav { gap:.6rem; padding:0 1.2rem 4rem; margin-top:3rem; }
      .subnav > a, .subnav > div { padding:1.2rem 1.4rem; min-height:60px; }
      .subnav-title { font-size:1rem; }
    }
@media (max-width:880px) {
      .nav-links > li > a { padding:.95rem 0; min-height:44px; }
      .dropdown a { padding:.7rem 0 .7rem .2rem; min-height:44px; }
      nav { padding:0 1rem; }
      .nav-brand { font-size:.9rem; letter-spacing:.18em; }
      .nav-mark { width:28px; height:28px; }
    }
@media (max-width:1024px) and (min-width:881px) {
      .h-entry { padding:2.6rem 1.6rem; gap:2rem; }
      .page-hero { padding:4.4rem 1.6rem 3rem; }
    }
@media (max-width:600px) {
      .h-entry { padding:2.4rem 1.2rem; gap:1.6rem; }
      .h-aside { padding:1.4rem 1.2rem; }
      .h-list li { font-size:.9rem; padding:.6rem 0; }
      .h-key { font-size:1rem; }
      footer { padding:2.6rem 1.2rem 2rem; }
      .ft-links { gap:1rem .9rem; font-size:.6rem; }
    }
.nav-search-btn{order:5;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;margin-left:.4rem;padding:0;background:transparent;border:none;border-radius:50%;color:var(--ink-soft,#4A453C);cursor:pointer;transition:color .2s,background .2s;}
.nav-search-btn:hover{color:var(--gold-deep,#6B4710);background:rgba(160,112,32,0.08);}
.nav-search-btn svg{width:18px;height:18px;}
body.ds-search-open{overflow:hidden;}
.ds-search[hidden]{display:none;}
.ds-search{position:fixed;inset:0;z-index:400;display:flex;align-items:flex-start;justify-content:center;}
.ds-search-backdrop{position:absolute;inset:0;background:rgba(26,24,20,0.45);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);}
.ds-search-box{position:relative;display:flex;flex-direction:column;width:min(640px,92vw);max-height:76vh;margin-top:11vh;background:var(--ivory,#FAF7EF);border:1px solid var(--rule,rgba(26,24,20,0.10));border-radius:10px;box-shadow:0 24px 60px rgba(26,24,20,0.28);overflow:hidden;}
.ds-search-bar{display:flex;align-items:center;gap:.6rem;padding:.85rem 1rem;border-bottom:1px solid var(--rule,rgba(26,24,20,0.10));}
.ds-search-bar>svg{flex:none;width:18px;height:18px;color:var(--gold-deep,#6B4710);}
.ds-search-input{flex:1;min-width:0;border:none;background:transparent;font-family:'EB Garamond',Georgia,serif;font-size:1.1rem;color:var(--ink,#1A1814);outline:none;}
.ds-search-cancel{flex:none;border:1px solid var(--rule,rgba(26,24,20,0.18));background:transparent;color:var(--ink-soft,#4A453C);font-family:'Inter',sans-serif;font-size:.55rem;letter-spacing:.14em;text-transform:uppercase;padding:.35rem .55rem;border-radius:5px;cursor:pointer;}
.ds-search-cancel:hover{color:var(--gold-deep,#6B4710);border-color:var(--gold,#A07020);}
.ds-search-results{list-style:none;margin:0;padding:.25rem 0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;}
.ds-search-results a{display:block;padding:.7rem 1.1rem;text-decoration:none;border-bottom:1px solid var(--rule-soft,rgba(26,24,20,0.06));}
.ds-search-results li:last-child a{border-bottom:none;}
.ds-search-results a:hover,.ds-search-results a:focus{background:var(--cream,#F2EDE2);outline:none;}
.ds-r-title{display:block;font-family:'Cormorant Garamond',serif;font-size:1.05rem;color:var(--ink,#1A1814);}
.ds-r-sec{display:block;margin:.1rem 0;font-family:'Inter',sans-serif;font-size:.55rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-deep,#6B4710);}
.ds-r-desc{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-family:'EB Garamond',serif;font-size:.82rem;line-height:1.4;color:var(--ink-soft,#4A453C);}
.ds-search mark{background:rgba(160,112,32,0.22);color:inherit;border-radius:2px;padding:0 .06em;}
.ds-search-hint,.ds-search-msg{margin:0;padding:1.1rem;text-align:center;font-family:'EB Garamond',serif;font-size:.92rem;color:var(--ink-soft,#4A453C);}
@media(max-width:880px){
    .nav-search-btn{order:0;margin-left:auto;width:42px;height:42px;}
    .nav-toggle{margin-left:.1rem;}
    .ds-search-box{width:100vw;max-width:100vw;max-height:100vh;height:100dvh;margin-top:0;border:none;border-radius:0;}
  }
#ai-disclosure {
    display:none;
    position:fixed; inset:0; z-index:9999;
    align-items:center; justify-content:center;
    padding:1.5rem;
  }
#ai-disclosure.open { display:flex; }
.disclosure-backdrop {
    position:absolute; inset:0;
    background:rgba(26,24,20,0.72);
    backdrop-filter:blur(4px);
    -webkit-backdrop-filter:blur(4px);
  }
.disclosure-card {
    position:relative; z-index:1;
    background:var(--ivory,#FAF7EF);
    border:1px solid rgba(160,112,32,0.35);
    max-width:520px; width:100%;
    padding:2.8rem 2.6rem 2.4rem;
    text-align:center;
    box-shadow:0 8px 48px rgba(26,24,20,0.22);
    animation:disclosure-rise .4s ease forwards;
  }
@keyframes disclosure-rise {
    from { opacity:0; transform:translateY(12px); }
    to   { opacity:1; transform:translateY(0); }
  }
.disclosure-ornament {
    font-size:.85rem; color:var(--gold,#A07020);
    letter-spacing:.5em; margin-bottom:1.2rem;
  }
.disclosure-label {
    font-family:'Inter',sans-serif; font-size:.58rem; font-weight:500;
    letter-spacing:.38em; text-transform:uppercase;
    color:var(--gold-deep,#6B4710); margin-bottom:.9rem;
  }
.disclosure-title {
    font-family:'Cormorant Garamond',Georgia,serif;
    font-size:1.85rem; font-weight:500;
    color:var(--ink,#1A1814);
    letter-spacing:.04em; margin-bottom:1.1rem;
  }
.disclosure-rule {
    width:48px; height:1px;
    background:var(--gold,#A07020);
    margin:0 auto 1.4rem;
  }
.disclosure-body {
    font-family:'EB Garamond',Georgia,serif;
    font-size:1rem; line-height:1.85;
    color:var(--ink-soft,#4A453C);
  }
.disclosure-body--note {
    margin-top:.9rem;
    font-size:.9rem;
    color:var(--ink-faint,#8B8472);
    font-style:italic;
  }
.disclosure-btn {
    display:inline-block; margin-top:2rem;
    font-family:'Inter',sans-serif;
    font-size:.68rem; font-weight:500;
    letter-spacing:.22em; text-transform:uppercase;
    padding:.9rem 2.2rem;
    background:var(--ink,#1A1814);
    color:var(--ivory,#FAF7EF);
    border:1px solid var(--ink,#1A1814);
    cursor:pointer;
    transition:all .25s;
  }
.disclosure-btn:hover {
    background:transparent;
    color:var(--ink,#1A1814);
  }
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
.city-hero{
      position:relative;min-height:520px;display:flex;align-items:flex-end;justify-content:center;
      background:#1A1814 center/cover no-repeat;
      background-image:linear-gradient(180deg,rgba(26,24,20,0.30) 0%,rgba(26,24,20,0.55) 60%,rgba(26,24,20,0.85) 100%),
                       url('https://commons.wikimedia.org/wiki/Special:FilePath/02%20Bidar%20Mohamad%20Gawan%20Madrasa.JPG?width=1600');
      color:var(--ivory);text-align:center;padding:6rem 2rem 3.4rem;border-bottom:1px solid var(--rule);
    }
.city-hero::after{content:'';position:absolute;inset:0;background:url('/assets/dakhni-pattern.png') repeat;background-size:120px;opacity:0.10;pointer-events:none;z-index:0;}
.city-hero-inner{max-width:760px;margin:0 auto;position:relative;z-index:1;}
.city-hero-eyebrow{font-family:'Inter',sans-serif;font-size:.66rem;font-weight:500;letter-spacing:.4em;text-transform:uppercase;color:var(--gold-soft);display:block;margin-bottom:1rem;}
.city-hero-urdu{font-family:'Lateef',serif;font-size:clamp(1.6rem,3.4vw,2.2rem);color:var(--gold-soft);line-height:1.4;margin-bottom:.4rem;}
.city-hero-title{font-family:'Cormorant Garamond',serif;font-size:clamp(2.4rem,6vw,4.2rem);color:var(--ivory);line-height:1.1;font-weight:500;letter-spacing:.06em;}
.city-hero-rule{width:64px;height:1px;background:var(--gold-soft);margin:1.4rem auto;}
.city-hero-sub{font-family:'EB Garamond',Georgia,serif;font-style:italic;font-size:clamp(1rem,1.7vw,1.12rem);color:#E5DDC8;max-width:580px;margin:0 auto;line-height:1.85;}
.facts-strip{background:var(--cream);padding:1.6rem 2rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1.2rem;border-bottom:1px solid var(--rule);}
.fact{text-align:center;}
.fact-key{font-family:'Inter',sans-serif;font-size:.58rem;font-weight:500;letter-spacing:.32em;text-transform:uppercase;color:var(--ink-faint);display:block;margin-bottom:.4rem;}
.fact-val{font-family:'Cormorant Garamond',serif;font-size:1rem;font-weight:600;color:var(--ink);}
.pillars-strip{background:var(--ivory);border-bottom:1px solid var(--rule);padding:1.4rem 1.4rem;display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem 1.4rem;align-items:center;}
.pillars-strip-label{font-family:'Inter',sans-serif;font-size:.58rem;font-weight:500;letter-spacing:.36em;text-transform:uppercase;color:var(--gold-deep);width:100%;text-align:center;margin-bottom:.4rem;}
.pillars-strip a{font-family:'Inter',sans-serif;font-size:.68rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);text-decoration:none;border-bottom:1px solid transparent;padding-bottom:2px;transition:color .2s, border-color .2s;}
.pillars-strip a:hover{color:var(--gold-deep);border-bottom-color:var(--gold);}
.pillars-strip-sep{color:var(--rule);font-size:.55rem;}
.h-entry:last-child{border-bottom:none;}
.h-entry:nth-child(even) .h-text{order:2;}
.h-eyebrow{font-family:'Inter',sans-serif;font-size:.62rem;font-weight:500;letter-spacing:.38em;text-transform:uppercase;color:var(--gold-deep);display:block;margin-bottom:.8rem;}
.h-numeral{font-family:'Cormorant Garamond',serif;font-size:.85rem;font-weight:600;letter-spacing:.2em;color:var(--gold);display:block;margin-bottom:.4rem;}
.h-title{font-family:'Cormorant Garamond',serif;font-size:clamp(1.5rem,2.6vw,2.05rem);font-weight:500;letter-spacing:.02em;line-height:1.2;color:var(--ink);margin-bottom:.6rem;}
.h-title em{color:var(--gold-deep);font-style:italic;}
.h-sub{font-family:'EB Garamond',Georgia,serif;font-style:italic;color:var(--ink-faint);font-size:1rem;margin-bottom:1.2rem;}
.h-body{font-family:'EB Garamond',Georgia,serif;font-size:1.02rem;line-height:1.85;color:var(--ink-soft);}
.h-body p{margin-bottom:.9rem;}
.h-body em{color:var(--gold-deep);font-style:italic;}
.h-figure{margin:0;}
.h-figure img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;background:var(--cream);border:1px solid var(--rule);}
.h-list .h-key{font-family:'Cormorant Garamond',serif;font-weight:600;color:var(--ink);letter-spacing:.02em;white-space:nowrap;font-size:1rem;}
.h-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.4rem;}
.h-tag{font-family:'Inter',sans-serif;font-size:.6rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-deep);border:1px solid var(--rule);padding:.4rem .8rem;background:var(--ivory);}
.h-pull{margin:4rem auto;max-width:780px;padding:3rem 2rem;text-align:center;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);background:var(--cream);}
.h-pull-urdu{font-family:'Lateef',serif;font-size:clamp(1.5rem,3vw,2.2rem);color:var(--gold-deep);line-height:1.6;}
.h-pull-trans{font-family:'EB Garamond',Georgia,serif;font-style:italic;font-size:1.1rem;line-height:1.85;color:var(--ink-soft);margin-top:1rem;}
.h-pull-attr{font-family:'Inter',sans-serif;font-size:.62rem;font-weight:500;letter-spacing:.32em;text-transform:uppercase;color:var(--ink-faint);margin-top:1.2rem;}
.timeline-wrap{max-width:980px;margin:0 auto;padding:4rem 2rem;}
.timeline-hdr{text-align:center;margin-bottom:3rem;}
.timeline-eyebrow{font-family:'Inter',sans-serif;font-size:.62rem;font-weight:500;letter-spacing:.38em;text-transform:uppercase;color:var(--gold-deep);display:block;margin-bottom:.9rem;}
.timeline-title{font-family:'Cormorant Garamond',serif;font-size:clamp(1.6rem,3vw,2.3rem);color:var(--ink);font-weight:500;letter-spacing:.02em;}
.tl-list{list-style:none;display:grid;gap:0;border-left:1px solid var(--rule);margin-left:1rem;}
.tl-item{position:relative;padding:.9rem 0 1.4rem 1.8rem;}
.tl-item::before{content:'';position:absolute;left:-5px;top:1.25rem;width:9px;height:9px;background:var(--gold);transform:rotate(45deg);}
.tl-year{font-family:'Cormorant Garamond',serif;font-weight:600;color:var(--gold-deep);font-size:1.05rem;letter-spacing:.04em;display:inline-block;margin-right:.7rem;}
.tl-text{font-family:'EB Garamond',Georgia,serif;color:var(--ink-soft);font-size:1rem;line-height:1.65;}
.reveal,.reveal-left,.reveal-right{opacity:0;transition:opacity .9s ease, transform .9s ease;}
.reveal-left{transform:translateX(-20px);}
.reveal-right{transform:translateX(20px);}
.visible{opacity:1;transform:none;}
@media (max-width:880px){
      .city-hero{min-height:380px;padding:4rem 1.4rem 2.6rem;}
      .h-entry{grid-template-columns:1fr;gap:1.6rem;padding:2.4rem 0;}
      .h-entry:nth-child(even) .h-text{order:0;}
      .h-wrap{padding:3rem 1.4rem 3rem;}
      nav{padding:0 1.2rem;}
      .nav-links{gap:1rem;}
      .nav-links a{font-size:.6rem;letter-spacing:.14em;}
      footer{padding:3rem 1.4rem 2.4rem;}
    }
@media (max-width:900px){
      .h-entry { grid-template-columns:1fr !important; gap:1.8rem !important; }
      .h-entry > .h-figure, .h-entry > .h-text, .h-entry > .h-aside { order:0 !important; }
      .h-aside { position:static !important; }
    }
@media (max-width:880px){
      nav{padding:0 1.2rem;flex-wrap:wrap;height:auto;min-height:58px;align-items:center;}
      .nav-toggle{display:flex;}
      .nav-links{order:3;display:none;flex-direction:column;align-items:flex-start;width:100%;gap:0;padding:.5rem 0 1rem;border-top:1px solid var(--rule);background:rgba(250,247,239,0.98);margin:.4rem -1.2rem 0;padding-left:1.4rem;}
      .nav-links.open{display:flex;position:fixed;top:58px;left:0;right:0;bottom:0;width:auto;margin:0;padding:.6rem 1.4rem calc(1.4rem + env(safe-area-inset-bottom));overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;z-index:190;}
      body.menu-open{overflow:hidden;}
      body.menu-open nav{-webkit-backdrop-filter:none;backdrop-filter:none;}
      .nav-links > li{width:100%;border-bottom:1px solid var(--rule-soft);}
      .nav-links > li:last-child{border-bottom:none;}
      .nav-links > li > a{display:block;padding:1rem 0;font-size:.72rem;letter-spacing:.18em;width:100%;}
}
.page-hero::after {
      content:''; position:absolute; inset:0;
      background:url('/assets/dakhni-pattern.png') repeat;
      background-size:120px;
      opacity:0.05; pointer-events:none; z-index:0;
    }
.page-hero-inner { position:relative; z-index:1; max-width:760px; margin:0 auto; }
.page-hero-eyebrow { font-family:'Inter',sans-serif; font-size:.62rem; font-weight:500; letter-spacing:.38em; text-transform:uppercase; color:var(--gold-deep); margin-bottom:1rem; display:block; }
.page-hero-rule { width:64px; height:1px; background:var(--gold); margin:1.4rem auto; }
.crumb a { color:var(--ink-soft); text-decoration:none; }
.crumb a:hover { color:var(--gold-deep); }
.crumb-sep { color:var(--gold); margin:0 .6rem; }
.subnav a { background:var(--ivory); padding:1.4rem 1.6rem; text-decoration:none; color:var(--ink-soft); transition:background .2s; }
.subnav a:hover { background:var(--cream); color:var(--gold-deep); }
.subnav-spacer { background:var(--ivory); }
@media(max-width:600px){ .subnav{grid-template-columns:1fr;} .subnav .next, .subnav .index { text-align:left; } }
/* Unified card component — one structure for every hub listing */
.card-grid-wrap { max-width:1180px; margin:0 auto 6rem; padding:2.4rem 1.4rem 0; }
.hub-intro { max-width:760px; margin:0 auto 3rem; }
.card-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:1px; background:var(--rule); border:1px solid var(--rule); }
.card { background:var(--ivory); padding:2.2rem 1.8rem; text-decoration:none; color:inherit; transition:background .25s; display:flex; flex-direction:column; }
a.card:hover { background:var(--cream); }
.card--soon { cursor:default; }
.card-eyebrow { font-family:'Inter',sans-serif; font-size:.58rem; font-weight:500; letter-spacing:.32em; text-transform:uppercase; color:var(--gold-deep); display:block; margin-bottom:.7rem; }
.card-title { font-family:'Cormorant Garamond',serif; font-size:1.4rem; font-weight:500; color:var(--ink); margin:0 0 .45rem; letter-spacing:.03em; }
.card-meta { font-family:'EB Garamond',serif; font-style:italic; font-size:.92rem; color:var(--ink-faint); margin:0 0 .85rem; }
.card-text { font-family:'EB Garamond',serif; font-size:.95rem; line-height:1.7; color:var(--ink-soft); margin:0; flex:1; }
.card-text a { color:var(--gold-deep); text-decoration:none; border-bottom:1px solid var(--gold-soft); }
.card-text a:hover { color:var(--ink); }
.card-cta { display:inline-block; margin-top:1.2rem; font-family:'Inter',sans-serif; font-size:.58rem; font-weight:500; letter-spacing:.22em; text-transform:uppercase; color:var(--gold-deep); border-bottom:1px solid var(--gold); padding-bottom:2px; align-self:flex-start; }
.card--soon .card-cta { color:var(--ink-faint); border-bottom:1px dotted var(--ink-faint); }
@media(max-width:600px){ .card { padding:1.8rem 1.4rem; } .card-title { font-size:1.25rem; } }
.article p { font-family:'EB Garamond',Georgia,serif; font-size:1.07rem; line-height:1.85; color:var(--ink-soft); margin-bottom:1.3rem; }
@media (max-width:880px){
      nav{padding:0 1.2rem;flex-wrap:wrap;height:auto;min-height:58px;}
      .nav-toggle{display:flex;}
      .nav-links{order:3;display:none;flex-direction:column;align-items:flex-start;width:100%;gap:0;padding:.5rem 0 1rem;border-top:1px solid var(--rule);background:rgba(250,247,239,0.98);margin:.4rem -1.2rem 0;padding-left:1.4rem;}
      .nav-links.open{display:flex;position:fixed;top:58px;left:0;right:0;bottom:0;width:auto;margin:0;padding:.6rem 1.4rem calc(1.4rem + env(safe-area-inset-bottom));overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;z-index:190;}
      body.menu-open{overflow:hidden;}
      body.menu-open nav{-webkit-backdrop-filter:none;backdrop-filter:none;}
      .nav-links > li{width:100%;border-bottom:1px solid var(--rule-soft);}
      .nav-links > li:last-child{border-bottom:none;}
      .nav-links > li > a{display:block;padding:1rem 0;font-size:.72rem;letter-spacing:.18em;width:100%;}
}
@media (max-width:780px){ .h-section { grid-template-columns:1fr; gap:2rem; } }
.h-text h2.h-title { font-family:'Cormorant Garamond',serif; font-size:clamp(1.5rem,2.6vw,2.05rem); font-weight:500; letter-spacing:.02em; line-height:1.2; color:var(--ink); margin-bottom:.6rem; }
.h-text h2.h-title em { color:var(--gold-deep); font-style:italic; }
.urdu-q { font-family:'Lateef',serif; font-size:1.6rem; color:var(--gold-deep); direction:rtl; line-height:1.7; margin:1.4rem 0 .6rem; }
@media(max-width:600px){ .subnav{grid-template-columns:1fr;} }
.page-hero-urdu { font-family:'Lateef',serif; font-size:clamp(2rem,4.4vw,3rem); color:var(--gold-deep); line-height:1.4; margin-bottom:.4rem; }
.article em { color:var(--gold-deep); font-style:italic; }
.tl-text em { color:var(--gold-deep); font-style:italic; }
.intro-wrap { max-width:760px; margin:0 auto; padding:4rem 1.4rem 2rem; }
.intro-wrap p { font-family:'EB Garamond',Georgia,serif; font-size:1.07rem; line-height:1.9; color:var(--ink-soft); margin-bottom:1.3rem; }
.grid-wrap { padding:2rem 1.4rem 5rem; }
.article-intro { max-width:760px; margin:0 auto; padding:3.5rem 1.4rem 2rem; }
.article-intro p { font-family:'EB Garamond',Georgia,serif; font-size:1.07rem; line-height:1.85; color:var(--ink-soft); margin-bottom:1.3rem; }
.article-intro a { color:var(--gold-deep); text-decoration:none; border-bottom:1px solid var(--gold); }
.article-intro a:hover { color:var(--ink); }
.h-entry:not(:has(.h-figure)){grid-template-columns:minmax(0,72ch);}
.diamonds-wrap{max-width:1100px;margin:0 auto;padding:4rem 2rem 2rem;}
.diamonds-hdr{text-align:center;margin-bottom:2.6rem;}
.diamond-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1px;background:var(--rule);border:1px solid var(--rule);}
.diamond-card{background:var(--ivory);padding:1.6rem 1.4rem;display:flex;flex-direction:column;}
.diamond-name{font-family:'Cormorant Garamond',serif;font-size:1.15rem;font-weight:600;color:var(--ink);margin-bottom:.3rem;letter-spacing:.02em;}
.diamond-weight{font-family:'Inter',sans-serif;font-size:.6rem;font-weight:500;letter-spacing:.28em;text-transform:uppercase;color:var(--gold-deep);margin-bottom:.7rem;}
.diamond-card p{font-family:'EB Garamond',Georgia,serif;font-size:.93rem;line-height:1.7;color:var(--ink-soft);}
.diamond-card-where{margin-top:.7rem;font-family:'Inter',sans-serif;font-size:.58rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-faint);}
.h-entry:nth-child(even) .h-figure{order:1;}
.h-body > p:first-of-type::first-letter{font-family:'Cormorant Garamond',serif;font-size:3rem;float:left;line-height:.9;padding:.06em .14em 0 0;color:var(--gold-deep);font-weight:500;}
.city-strip-nav{background:var(--cream);padding:.9rem 2rem;text-align:center;border-bottom:1px solid var(--rule);}
.city-strip-nav a{font-family:'Inter',sans-serif;font-size:.62rem;font-weight:400;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint);text-decoration:none;transition:color .2s;}
.city-strip-nav a:hover{color:var(--gold-deep);}
@media (max-width:880px){
      .city-hero{min-height:380px;padding:4rem 1.4rem 2.6rem;}
      .h-entry{grid-template-columns:1fr;gap:1.6rem;padding:2.4rem 1.2rem;}
      .h-entry:nth-child(even) .h-text{order:0;}
      .h-entry:nth-child(even) .h-figure{order:0;}
      .h-wrap{padding:0 0 2rem;}
      nav{padding:0 1.2rem;}
      .nav-links{gap:1rem;}
      .nav-links a{font-size:.6rem;letter-spacing:.14em;}
      footer{padding:3rem 1.4rem 2.4rem;}
      .h-aside{position:static;}
    }
@media (max-width:1024px) and (min-width:881px) {
      .h-entry { padding:2.6rem 1.6rem; gap:2rem; }
    }
.chrono { max-width:1100px; margin:5rem auto 0; padding:0 1.4rem; }
.chrono-title { text-align:center; font-family:'Cormorant Garamond',serif; font-weight:500; font-size:clamp(1.5rem,2.6vw,2rem); color:var(--ink); margin-bottom:.4rem; letter-spacing:.04em; }
.chrono-sub { text-align:center; font-style:italic; color:var(--ink-faint); margin-bottom:2.2rem; font-size:.95rem; }
.chrono-name { font-family:'Cormorant Garamond',serif; font-size:1.05rem; color:var(--ink); }
.cards-heading { text-align:center; font-family:'Cormorant Garamond',serif; font-weight:500; font-size:clamp(1.5rem,2.6vw,2rem); color:var(--ink); margin-bottom:.4rem; letter-spacing:.04em; }
.cards-sub { text-align:center; font-style:italic; color:var(--ink-faint); margin-bottom:2.4rem; font-size:.95rem; }
.closing { max-width:760px; margin:0 auto; padding:4rem 1.4rem 5rem; text-align:center; font-style:italic; color:var(--ink-soft); font-size:1.02rem; line-height:1.85; }
.subnav .mid { text-align:center; }
@media(max-width:600px){ .subnav{grid-template-columns:1fr;} .subnav .next, .subnav .mid { text-align:left; } }
.index-intro { max-width:760px; margin:0 auto; padding:3rem 1.4rem 2rem; }
.index-intro p { font-family:'EB Garamond',Georgia,serif; font-size:1.07rem; line-height:1.85; color:var(--ink-soft); margin-bottom:1.3rem; }
.index-intro p em { color:var(--gold-deep); font-style:italic; }
.article-intro p:first-of-type::first-letter { font-family:'Cormorant Garamond',serif; font-size:3rem; float:left; line-height:.9; padding:.06em .14em 0 0; color:var(--gold-deep); font-weight:500; }
.entry-eyebrow { font-family:'Inter',sans-serif; font-size:.58rem; font-weight:500; letter-spacing:.32em; text-transform:uppercase; color:var(--gold-deep); margin-bottom:.7rem; }
.entry-title { font-family:'Cormorant Garamond',serif; font-size:1.4rem; font-weight:500; color:var(--ink); letter-spacing:.03em; margin-bottom:.4rem; }
.entry-tag { font-family:'EB Garamond',serif; font-style:italic; font-size:.92rem; color:var(--ink-faint); margin-bottom:.9rem; }
.entry-text { font-family:'EB Garamond',serif; font-size:.96rem; line-height:1.75; color:var(--ink-soft); flex:1; }
.section-wrap { max-width:1100px; margin:0 auto; padding:4rem 1.4rem; }
.section-wrap.narrow { max-width:780px; }
.section-wrap h2.sec-title { text-align:center; }
.section-wrap .sec-label { text-align:center; }
.section-intro { font-family:'EB Garamond',Georgia,serif; font-style:italic; color:var(--ink-faint); max-width:620px; margin:.8rem auto 2.4rem; line-height:1.85; font-size:.98rem; text-align:center; }
.prose p { font-family:'EB Garamond',Georgia,serif; font-size:1.05rem; line-height:1.85; color:var(--ink-soft); margin-bottom:1.2rem; }
.prose em { color:var(--gold-deep); font-style:italic; }
.silsila-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:1.4rem; margin-top:2rem; }
.silsila-card { background:var(--cream); border:1px solid var(--rule); padding:1.8rem 1.6rem; }
.silsila-name { font-family:'Cormorant Garamond',serif; font-size:1.3rem; font-weight:600; color:var(--ink); letter-spacing:.04em; margin-bottom:.3rem; }
.silsila-urdu { font-family:'Lateef',serif; font-size:1.4rem; color:var(--gold-deep); margin-bottom:.6rem; }
.silsila-founder { font-family:'EB Garamond',Georgia,serif; font-style:italic; color:var(--ink-faint); font-size:.92rem; margin-bottom:.9rem; }
.silsila-text { font-family:'EB Garamond',Georgia,serif; font-size:.95rem; line-height:1.65; color:var(--ink-soft); }
.silsila-text em { color:var(--gold-deep); font-style:italic; }
.note-card { max-width:980px; margin:2rem auto 4rem; padding:2rem 2rem; background:var(--cream); border-left:3px solid var(--gold); }
.note-card-label { font-family:'Inter',sans-serif; font-size:.58rem; font-weight:500; letter-spacing:.34em; text-transform:uppercase; color:var(--gold-deep); display:block; margin-bottom:.7rem; }
.note-card-body { font-family:'EB Garamond',Georgia,serif; font-size:1rem; line-height:1.85; color:var(--ink-soft); }
.note-card-body em { color:var(--gold-deep); font-style:italic; }

/* ── normalized cover hero (generator) ── */
.city-hero{background:#1A1814 center/cover no-repeat;background-image:linear-gradient(180deg,rgba(26,24,20,0.42) 0%,rgba(26,24,20,0.60) 55%,rgba(26,24,20,0.88) 100%),var(--cover,url('/assets/dakhni-pattern.png'));}
.city-hero.page-hero--pattern{background:#1A1814;background-image:linear-gradient(180deg,rgba(26,24,20,0.50) 0%,rgba(26,24,20,0.80) 100%),var(--cover,url('/assets/dakhni-pattern.png'));background-size:cover,170px;background-repeat:no-repeat,repeat;background-position:center;}

/* ── progressive enhancement: never hide content if JS is absent/slow ── */
html:not(.js) .reveal, html:not(.js) .reveal-left, html:not(.js) .reveal-right { opacity:1 !important; transform:none !important; }

/* ── homepage heartland city grid (component) ── */
.heartland { background:var(--cream); padding:2.2rem 2rem 2.6rem; border-bottom:1px solid var(--rule); text-align:center; }
.heartland-label { font-family:'Inter',sans-serif; font-size:.58rem; font-weight:500; letter-spacing:.35em; text-transform:uppercase; color:var(--ink-faint); display:block; margin-bottom:1.1rem; }
.heartland-grid { list-style:none; margin:0 auto; padding:0; max-width:1080px; display:grid; grid-template-columns:repeat(5,1fr); grid-template-rows:repeat(2,1fr); gap:1px; background:var(--rule); border:1px solid var(--rule); }
.heartland-grid > li { display:flex; }
@media(max-width:760px){ .heartland-grid { grid-template-columns:repeat(2,1fr); grid-template-rows:auto; } }
.heartland-city { display:flex; flex-direction:column; justify-content:center; width:100%; background:var(--ivory); padding:1.1rem .8rem; text-decoration:none; color:inherit; transition:background .25s; }
.heartland-city:hover { background:#fff; }
.hc-name { display:block; font-family:'Cormorant Garamond',serif; font-size:1.1rem; font-weight:500; color:var(--ink); letter-spacing:.02em; }
.hc-era { display:block; margin-top:.35rem; font-family:'Inter',sans-serif; font-size:.55rem; font-weight:500; letter-spacing:.16em; text-transform:uppercase; color:var(--ink-faint); }

/* ── Quiz: intro panel (single-column centred) ── */
.quiz-intro-panel { max-width:680px; margin:0 auto; text-align:center; padding:1rem 2rem 2rem; }
.quiz-intro-panel .quiz-title { text-align:center; }
.quiz-intro-panel .quiz-body { max-width:500px; margin:0 auto; }
.quiz-topic-grid { display:flex; flex-wrap:wrap; gap:.5rem; justify-content:center; margin:1.8rem auto 2.5rem; max-width:520px; }
.quiz-topic { font-family:'Inter',sans-serif; font-size:.68rem; font-weight:400; letter-spacing:.06em; padding:.38rem .9rem; border:1px solid var(--rule); color:var(--ink-soft); background:var(--cream); }
.quiz-start-btn { margin-top:.5rem; }

/* ── Quiz: interactive states ── */
.quiz-opt--static { cursor:default; pointer-events:none; opacity:.82; }
.quiz-opt.correct { background:#1d5c1d; color:#fff; border-left-color:#1d5c1d; border-color:#1d5c1d; }
.quiz-opt.wrong   { background:#7a1c1c; color:#fff; border-left-color:#7a1c1c; border-color:#7a1c1c; }
.quiz-opt[disabled] { cursor:default; }
.quiz-stage { max-width:680px; margin:0 auto; padding:3rem 2rem 1rem; }
.quiz-progress-wrap { margin-bottom:1.8rem; }
.quiz-progress-label { display:block; font-family:'Inter',sans-serif; font-size:.68rem; font-weight:400; letter-spacing:.22em; text-transform:uppercase; color:var(--ink-faint); margin-bottom:.6rem; }
.quiz-bar { height:3px; background:var(--rule); border-radius:2px; overflow:hidden; }
.quiz-bar-fill { height:100%; background:var(--gold-deep); transition:width .35s ease; width:0; }
.quiz-next-wrap { display:flex; justify-content:flex-end; padding-top:1rem; }
.quiz-result-panel { text-align:center; padding:4rem 2rem 3rem; max-width:520px; margin:0 auto; }
.quiz-score-wrap { display:flex; align-items:baseline; gap:.4rem; justify-content:center; margin-bottom:1rem; }
.quiz-score-num { font-family:'Cormorant Garamond',serif; font-size:5rem; font-weight:600; color:var(--gold-deep); line-height:1; }
.quiz-score-denom { font-family:'Cormorant Garamond',serif; font-size:1.6rem; color:var(--ink-faint); }
.quiz-score-breakdown { font-family:'Inter',sans-serif; font-size:.78rem; font-weight:500; letter-spacing:.12em; text-transform:uppercase; color:var(--ink-soft); margin-bottom:.8rem; }
.quiz-score-comment { font-style:italic; font-size:1.1rem; color:var(--ink-soft); margin-bottom:0; line-height:1.7; }
