/* ============================================================
   Masjid-e-Kundian detail page
   ============================================================ */
.kd-hero{background:linear-gradient(165deg,var(--green-800),var(--green-950));
  color:var(--ivory);position:relative;overflow:hidden;padding:clamp(48px,8vw,88px) 0}
.kd-hero-pattern{position:absolute;inset:0;opacity:.07;z-index:0;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'%3E%3Cg fill='none' stroke='%23E3CE9A' stroke-width='1'%3E%3Cpath d='M60 8 74 46 112 60 74 74 60 112 46 74 8 60 46 46Z'/%3E%3Ccircle cx='60' cy='60' r='30'/%3E%3C/g%3E%3C/svg%3E")}
.kd-hero-inner{position:relative;z-index:1}
.kd-hero .crumbs{color:#9FC3AE;font-size:14px;margin-bottom:22px}
.kd-hero .crumbs a{color:var(--gold-soft);text-decoration:none}
.kd-flag{display:inline-block;background:rgba(198,161,79,.16);color:var(--gold-soft);
  border:1px solid rgba(198,161,79,.4);font-size:12.5px;font-weight:700;letter-spacing:.5px;
  text-transform:uppercase;border-radius:99px;padding:5px 15px;margin-bottom:18px}
.kd-hero h1{font-family:var(--serif);font-weight:400;font-size:clamp(36px,6vw,60px);
  line-height:1.05;color:#fff;display:flex;flex-direction:column;gap:6px}
.kd-hero .kd-sub-ar{font-family:'Noto Naskh Arabic',serif;font-size:clamp(22px,3vw,32px);
  color:var(--gold-soft);direction:rtl}
.kd-hero .kd-tagline{font-size:clamp(17px,2.4vw,21px);color:#D9E4DB;max-width:52ch;
  margin:20px 0 30px;line-height:1.5}
.kd-hero .kd-tagline em{color:var(--gold-soft);font-style:italic}
.kd-hero-cta{display:flex;flex-wrap:wrap;gap:18px;align-items:center}

.kd-facts-strip{background:var(--green-900);color:var(--ivory);
  border-bottom:1px solid rgba(198,161,79,.25)}
.kd-facts-strip .wrap{display:grid;grid-template-columns:repeat(4,1fr)}
.kd-facts-strip div{padding:22px 10px;text-align:center;
  border-right:1px solid rgba(198,161,79,.14)}
.kd-facts-strip div:last-child{border-right:none}
.kd-facts-strip b{display:block;font-family:var(--serif);font-size:21px;color:var(--gold-soft)}
.kd-facts-strip span{font-size:12.5px;color:#9FC3AE}
@media(max-width:680px){.kd-facts-strip .wrap{grid-template-columns:repeat(2,1fr)}
  .kd-facts-strip div:nth-child(2){border-right:none}}

.kd-story{display:grid;grid-template-columns:1.4fr .9fr;gap:44px;align-items:start}
@media(max-width:900px){.kd-story{grid-template-columns:1fr}}
.kd-story-main p{margin-bottom:16px;color:var(--ink)}
.kd-story-main strong{color:var(--green-800)}
.kd-quote{margin-top:26px;padding:22px 26px;border-left:3px solid var(--gold);
  background:var(--ivory-2);border-radius:0 12px 12px 0;font-family:var(--serif);
  font-size:19px;line-height:1.5;color:var(--green-900)}
.kd-quote cite{display:block;margin-top:10px;font-family:var(--sans);font-size:14px;
  font-style:normal;color:var(--muted)}
.kd-gallery{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.kd-gallery .ph{background:var(--ivory-2);border:1px dashed var(--line);border-radius:12px;
  display:grid;place-items:center;color:var(--muted);font-size:13px;text-align:center;padding:12px}
.kd-gallery .kd-ph-lg{grid-column:1/3;aspect-ratio:16/10}
.kd-gallery .kd-ph-sm{aspect-ratio:1/1}
.kd-cap{font-size:12.5px;color:var(--muted);margin-top:10px;text-align:center}

.kd-progress-head{display:flex;justify-content:space-between;align-items:flex-end;
  gap:16px;flex-wrap:wrap;margin-bottom:24px}
.kd-progress-card{background:#fff;border:1px solid var(--line);border-radius:18px;
  padding:clamp(24px,4vw,36px);box-shadow:0 16px 44px -26px rgba(12,38,30,.5)}
.kd-prog-nums{display:flex;justify-content:space-between;gap:20px;margin-bottom:18px;flex-wrap:wrap}
.kd-prog-nums b{display:block;font-family:var(--serif);font-size:clamp(26px,4vw,36px)}
.kd-prog-nums .raised b{color:var(--green-800)}
.kd-prog-nums .goal{text-align:right}
.kd-prog-nums .goal b{color:var(--muted)}
.kd-prog-nums span{font-size:13px;color:var(--muted)}
.kd-bar{height:26px;background:var(--ivory-2);border-radius:99px;overflow:hidden;
  border:1px solid var(--line)}
.kd-bar-fill{display:flex;align-items:center;justify-content:flex-end;height:100%;
  background:linear-gradient(90deg,var(--green-700),var(--gold));border-radius:99px;
  min-width:52px;transition:width 1s cubic-bezier(.4,0,.2,1)}
.kd-bar-fill em{color:var(--green-950);font-style:normal;font-weight:800;font-size:13px;
  padding-right:12px}
.kd-prog-note{font-size:12.5px;color:var(--muted);margin-top:14px}

.kd-units{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:26px}
@media(max-width:820px){.kd-units{grid-template-columns:repeat(2,1fr)}}
.kd-unit{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;
  background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px 16px;
  text-decoration:none;color:var(--ink);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.kd-unit:hover{transform:translateY(-4px);border-color:var(--gold);
  box-shadow:0 18px 40px -24px rgba(12,38,30,.55)}
.kd-unit-icon{font-size:30px;color:var(--gold);margin-bottom:4px}
.kd-unit-name{font-family:var(--serif);font-size:17px;color:var(--green-900)}
.kd-unit-price{font-weight:700;color:var(--green-800);font-size:15px}

.kd-loc{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center}
@media(max-width:820px){.kd-loc{grid-template-columns:1fr}}
.kd-loc-card{background:var(--green-900);color:var(--ivory);border-radius:18px;
  padding:32px;position:relative;overflow:hidden}
.kd-loc-mark{font-size:56px;color:var(--gold);margin-bottom:12px}
.kd-loc-card dl{display:flex;flex-direction:column;gap:14px}
.kd-loc-card dl div{border-bottom:1px solid rgba(198,161,79,.18);padding-bottom:12px}
.kd-loc-card dt{font-size:12px;letter-spacing:.5px;text-transform:uppercase;color:var(--gold-soft);margin-bottom:3px}
.kd-loc-card dd{font-size:16px;color:var(--ivory)}
.kd-loc-note{font-size:12.5px;color:#9FC3AE;margin-top:16px}

.kd-related{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
@media(max-width:760px){.kd-related{grid-template-columns:1fr}}
.kd-rel{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px;
  text-decoration:none;color:var(--ink);transition:transform .2s ease,border-color .2s ease}
.kd-rel:hover{transform:translateY(-3px);border-color:var(--gold)}
.kd-rel span{font-size:26px;color:var(--gold);display:block;margin-bottom:10px}
.kd-rel h3{font-family:var(--serif);font-size:19px;color:var(--green-900);margin-bottom:5px}
.kd-rel p{font-size:14px;color:var(--muted)}
