:root{
  --paper:#EAEFEE; --card:#FFFFFF; --ink:#13201E; --ink-soft:#566663;
  --brand:#0F7268; --brand-deep:#0A4F49; --line:#D6E0DD; --line-soft:#E7EDEC;
  --good:#2E9E5B; --mod:#C99A00; --usg:#DD6F26; --unh:#D43D3D; --vunh:#8B4A9C; --haz:#7A2230;
  --shadow:0 1px 2px rgba(19,32,30,.04),0 8px 28px rgba(19,32,30,.08);
}
*{box-sizing:border-box}
html,body{margin:0}
body{
  background:radial-gradient(120% 80% at 50% -10%, #F3F7F6 0%, var(--paper) 55%) fixed;
  color:var(--ink);
  font-family:"Inter",system-ui,sans-serif;
  -webkit-font-smoothing:antialiased;
  line-height:1.5;
  padding:0 18px 64px;
}
.wrap{max-width:760px;margin:0 auto}
.urdu{font-family:"Noto Nastaliq Urdu","Inter",serif;direction:rtl;line-height:2.1}

/* header */
header{padding:30px 0 14px;display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:12px}
.mark{width:40px;height:40px;flex:none}
.word{font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:26px;letter-spacing:-.02em;line-height:1}
.word b{color:var(--brand)}
.tag{font-size:12.5px;color:var(--ink-soft);margin-top:3px;max-width:30ch}
.langtog{display:flex;border:1px solid var(--line);border-radius:999px;overflow:hidden;background:var(--card)}
.langtog button{border:0;background:transparent;padding:7px 14px;font-size:13px;font-weight:600;color:var(--ink-soft);cursor:pointer;font-family:inherit}
.langtog button.on{background:var(--brand);color:#fff}
.langtog button:last-child{font-family:"Noto Nastaliq Urdu",serif;font-size:15px}

/* panels */
.panel{background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:18px 18px 20px;margin-top:16px}
.eyebrow{font-family:"JetBrains Mono",monospace;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--brand);margin:0 0 12px}
label.field{display:block;font-size:12.5px;font-weight:600;color:var(--ink-soft);margin:0 0 6px}
select{
  width:100%;font:inherit;font-size:15px;padding:11px 12px;border:1px solid var(--line);
  border-radius:11px;background:#fff;color:var(--ink);appearance:none;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8'><path d='M1 1l5 5 5-5' stroke='%23566663' stroke-width='1.6' fill='none' stroke-linecap='round'/></svg>");
  background-repeat:no-repeat;background-position:right 14px center;cursor:pointer
}
.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:520px){.two{grid-template-columns:1fr}}

/* AQI dial */
.aqi-row{display:flex;align-items:center;gap:16px;margin-top:14px;padding:14px;border:1px solid var(--line-soft);border-radius:13px;background:#FAFCFB}
.dial{width:62px;height:62px;flex:none;border-radius:50%;display:grid;place-items:center;color:#fff;font-family:"JetBrains Mono",monospace;font-weight:700;font-size:21px;box-shadow:inset 0 0 0 4px rgba(255,255,255,.35);background:#9aa}
.aqi-meta{flex:1;min-width:0}
.aqi-cat{font-weight:700;font-size:15.5px}
.aqi-sub{font-size:12.5px;color:var(--ink-soft);font-family:"JetBrains Mono",monospace}
.demo-note{font-size:11px;color:var(--ink-soft);margin-top:9px;opacity:.85}
.stale-tag{display:inline-block;font-family:"JetBrains Mono",monospace;font-size:10px;font-weight:700;letter-spacing:.1em;color:#fff;background:var(--usg);padding:2px 8px;border-radius:6px;margin-left:8px;vertical-align:middle}

/* chips */
.chips{display:flex;flex-wrap:wrap;gap:9px;margin-top:4px}
.chip{border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 14px;font-size:13.5px;font-weight:500;color:var(--ink);cursor:pointer;font-family:inherit;transition:.12s}
.chip:hover{border-color:var(--brand)}
.chip.on{background:var(--brand);border-color:var(--brand);color:#fff}

/* CTA */
.cta{width:100%;margin-top:16px;border:0;border-radius:13px;background:var(--brand);color:#fff;font-family:"Bricolage Grotesque",sans-serif;font-weight:700;font-size:16px;padding:15px;cursor:pointer;transition:.15s;letter-spacing:.01em}
.cta:hover{background:var(--brand-deep)}
.cta:disabled{opacity:.55;cursor:default}

/* verdict card */
#verdict{margin-top:16px;display:none}
.vcard{border-radius:18px;overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--line)}
.vtop{padding:22px 22px 20px;color:#fff;position:relative}
.vrisk{font-family:"JetBrains Mono",monospace;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;opacity:.9}
.vmain{font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:25px;line-height:1.18;letter-spacing:-.015em;margin:8px 0 0;max-width:32ch}
.vmain.urdu{font-size:24px;margin-top:12px}
.vmirror{font-size:18px;opacity:.92;margin-top:14px;border-top:1px solid rgba(255,255,255,.25);padding-top:13px}
.vbody{background:#fff;padding:20px 22px 22px}
.vbody h4{margin:0 0 12px;font-size:12px;font-family:"JetBrains Mono",monospace;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-soft)}
ul.actions{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:11px}
ul.actions li{display:flex;gap:11px;align-items:flex-start;font-size:15px}
ul.actions li::before{content:"";width:9px;height:9px;border-radius:50%;flex:none;margin-top:6px;background:var(--brand)}
ul.actions.urdu li{flex-direction:row-reverse;text-align:right}
.why{margin-top:16px;padding-top:15px;border-top:1px solid var(--line-soft);font-size:14px;color:var(--ink-soft)}
.why.urdu{font-size:15px}
.src-tag{font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:.1em;color:var(--ink-soft);text-transform:uppercase;margin-top:10px;opacity:.7}

/* ask */
.askrow{display:flex;gap:10px;margin-top:4px}
.askrow input{flex:1;font:inherit;font-size:15px;padding:12px 13px;border:1px solid var(--line);border-radius:11px}
.askrow button{border:0;background:var(--ink);color:#fff;border-radius:11px;padding:0 18px;font-weight:600;font-family:inherit;cursor:pointer;font-size:14px}
.askrow button:disabled{opacity:.5}
.answer{margin-top:14px;font-size:15px;background:#FAFCFB;border:1px solid var(--line-soft);border-radius:12px;padding:15px;display:none}
.answer.urdu{font-size:16px}
.suggest{display:flex;flex-wrap:wrap;gap:8px;margin-top:11px}
.suggest button{border:1px dashed var(--line);background:transparent;border-radius:999px;padding:7px 12px;font-size:12.5px;color:var(--ink-soft);cursor:pointer;font-family:inherit}
.suggest button:hover{border-color:var(--brand);color:var(--brand)}

.skel{height:14px;border-radius:6px;background:linear-gradient(90deg,#eef2f1,#e2e9e7,#eef2f1);background-size:200% 100%;animation:sh 1.1s infinite;display:inline-block}
@keyframes sh{0%{background-position:200% 0}100%{background-position:-200% 0}}
.foot{text-align:center;font-size:11.5px;color:var(--ink-soft);margin-top:26px;line-height:1.7}
.foot a{color:var(--brand);text-decoration:none}
.foot a:hover{text-decoration:underline}

/* ============================================================
   SHARED LAYOUT — nav, hero, sections, team, partners, footer
   ============================================================ */

/* nav */
.nav{
  max-width:980px; margin:0 auto; padding:24px 0 8px;
  display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap;
}
.nav-brand{display:flex; align-items:center; gap:10px; text-decoration:none; color:var(--ink)}
.nav-brand .mark{width:34px; height:34px}
.nav-brand .word{font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:22px;letter-spacing:-.02em;line-height:1}
.nav-brand .word b{color:var(--brand)}
.nav-links{display:flex; gap:8px; flex-wrap:wrap}
.nav-link{
  text-decoration:none; color:var(--ink-soft); font-weight:600; font-size:14px;
  padding:8px 14px; border-radius:999px; border:1px solid transparent;
  transition:.12s;
}
.nav-link:hover{color:var(--brand); border-color:var(--line)}
.nav-link.on{color:#fff; background:var(--brand); border-color:var(--brand)}

/* shared section padding */
.section{max-width:980px; margin:0 auto; padding:48px 0 8px}
.section.tight{padding:24px 0 8px}
.section-head{font-family:"JetBrains Mono",monospace;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--brand);margin:0 0 12px}
.section-title{
  font-family:"Bricolage Grotesque",sans-serif;font-weight:800;letter-spacing:-.015em;line-height:1.12;
  font-size:32px; margin:0 0 14px; max-width:24ch;
}
.section-lede{font-size:17px; color:var(--ink-soft); max-width:64ch; margin:0 0 24px}

/* HERO (Home) */
.hero{
  max-width:980px; margin:24px auto 0; padding:36px 0 8px;
  display:grid; grid-template-columns:1.15fr .85fr; gap:32px; align-items:center;
}
@media(max-width:760px){.hero{grid-template-columns:1fr}}
.hero h1{
  font-family:"Bricolage Grotesque",sans-serif;font-weight:800;letter-spacing:-.02em;line-height:1.05;
  font-size:46px; margin:14px 0 14px;
}
.hero h1 b{color:var(--brand)}
.hero h1 i{font-style:normal; color:var(--mod)}
.hero .lede{font-size:18px; color:var(--ink-soft); max-width:54ch; margin:0 0 22px; line-height:1.55}
.hero-ctas{display:flex; gap:10px; flex-wrap:wrap}
.btn{
  display:inline-block; text-decoration:none; font-family:"Bricolage Grotesque",sans-serif;
  font-weight:700; font-size:15px; padding:13px 22px; border-radius:12px; transition:.15s;
  border:1px solid transparent; cursor:pointer;
}
.btn.primary{background:var(--brand); color:#fff}
.btn.primary:hover{background:var(--brand-deep)}
.btn.ghost{background:#fff; color:var(--ink); border-color:var(--line)}
.btn.ghost:hover{border-color:var(--brand); color:var(--brand)}
.hero-eyebrow{
  display:inline-flex; align-items:center; gap:8px; padding:6px 12px; border-radius:999px;
  background:#fff; border:1px solid var(--line); color:var(--brand);
  font-family:"JetBrains Mono",monospace; font-size:11px; font-weight:700; letter-spacing:.12em; text-transform:uppercase;
}
.hero-eyebrow .dot{width:7px; height:7px; border-radius:50%; background:var(--good)}

/* hero visual card */
.hero-card{
  background:#fff; border:1px solid var(--line); border-radius:20px; padding:20px;
  box-shadow:var(--shadow);
}
.hero-card .row{display:flex; align-items:center; gap:14px; padding:10px 0; border-bottom:1px dashed var(--line-soft)}
.hero-card .row:last-child{border-bottom:0}
.hero-card .dial{width:54px;height:54px;font-size:18px}
.hero-card .label{font-weight:700; font-size:14px}
.hero-card .meta{font-family:"JetBrains Mono",monospace;font-size:11.5px;color:var(--ink-soft)}
.hero-card .arrow{margin-left:auto;color:var(--brand);font-weight:700}
.hero-verdict{
  margin-top:10px; padding:14px; border-radius:14px; color:#fff;
  background:linear-gradient(140deg, var(--unh), #8B2424);
}
.hero-verdict .vrisk{font-family:"JetBrains Mono",monospace;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;opacity:.92}
.hero-verdict .vmain{font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:18px;margin-top:6px;line-height:1.25}
.hero-verdict .vur{margin-top:9px;border-top:1px solid rgba(255,255,255,.25);padding-top:8px;font-size:14px;opacity:.95}

/* feature cards (3-up) */
.cards{display:grid; grid-template-columns:repeat(3, 1fr); gap:14px}
@media(max-width:760px){.cards{grid-template-columns:1fr}}
.card{
  background:#fff; border:1px solid var(--line); border-radius:16px; padding:18px;
  box-shadow:var(--shadow); display:flex; flex-direction:column; gap:8px; min-height:140px;
}
.card .ic{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;color:#fff;font-weight:800; font-family:"JetBrains Mono",monospace}
.card h3{margin:6px 0 0; font-family:"Bricolage Grotesque",sans-serif; font-weight:700; font-size:17px}
.card p{margin:0; color:var(--ink-soft); font-size:14px; line-height:1.5}

/* steps (numbered) */
.steps{display:grid; grid-template-columns:repeat(4, 1fr); gap:14px}
@media(max-width:880px){.steps{grid-template-columns:repeat(2, 1fr)}}
@media(max-width:520px){.steps{grid-template-columns:1fr}}
.step{
  background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px 16px 18px;
  box-shadow:var(--shadow);
}
.step .num{
  font-family:"JetBrains Mono",monospace; font-weight:700; font-size:11px; letter-spacing:.16em;
  color:var(--brand); text-transform:uppercase;
}
.step h4{margin:8px 0 6px; font-family:"Bricolage Grotesque",sans-serif; font-weight:700; font-size:16px}
.step p{margin:0; color:var(--ink-soft); font-size:13.5px}

/* About — team cards */
.team-grid{display:grid; grid-template-columns:repeat(2, 1fr); gap:16px}
@media(max-width:680px){.team-grid{grid-template-columns:1fr}}
.team-card{
  background:#fff; border:1px solid var(--line); border-radius:18px; padding:20px;
  box-shadow:var(--shadow); display:flex; gap:16px; align-items:flex-start;
}
.avatar{
  width:64px; height:64px; flex:none; border-radius:50%; display:grid; place-items:center;
  color:#fff; font-family:"Bricolage Grotesque",sans-serif; font-weight:800; font-size:23px;
  box-shadow:inset 0 0 0 3px rgba(255,255,255,.35);
}
.team-name{font-family:"Bricolage Grotesque",sans-serif; font-weight:700; font-size:18px}
.team-role{
  display:inline-block; margin-top:3px; font-family:"JetBrains Mono",monospace;
  font-size:11px; font-weight:700; letter-spacing:.13em; text-transform:uppercase; color:var(--brand);
}
.team-bio{margin-top:8px; font-size:14px; color:var(--ink-soft); line-height:1.55}
.team-links{margin-top:8px; display:flex; gap:10px}
.team-links a{font-size:13px; color:var(--brand); text-decoration:none; font-weight:600}
.team-links a:hover{text-decoration:underline}

/* Partners (text lockups, real logos can be swapped in) */
.partners{display:grid; grid-template-columns:repeat(4, 1fr); gap:12px}
@media(max-width:760px){.partners{grid-template-columns:repeat(2, 1fr)}}
.partner{
  background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 14px;
  text-align:center;display:flex;flex-direction:column;gap:6px;align-items:center;justify-content:center;
  min-height:88px;
}
.partner-lockup{
  font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:15px;letter-spacing:-.01em;
  color:var(--ink);line-height:1.15;
}
.partner-role{font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft)}

/* About — theme/values list */
.values{display:grid; grid-template-columns:1fr 1fr; gap:14px}
@media(max-width:760px){.values{grid-template-columns:1fr}}
.value{
  background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;display:flex;gap:12px;align-items:flex-start;
}
.value .bullet{width:12px;height:12px;border-radius:50%;margin-top:6px;flex:none;background:var(--brand)}
.value h4{margin:0 0 4px;font-family:"Bricolage Grotesque",sans-serif;font-weight:700;font-size:15.5px}
.value p{margin:0;color:var(--ink-soft);font-size:13.5px;line-height:1.55}

/* FOOTER */
.site-footer{margin:64px auto 0; max-width:980px; padding:32px 0 28px; border-top:1px solid var(--line)}
.foot-grid{
  display:grid; grid-template-columns:1.5fr 1fr 1fr 1.2fr; gap:32px;
}
@media(max-width:780px){.foot-grid{grid-template-columns:1fr 1fr; gap:24px}}
@media(max-width:460px){.foot-grid{grid-template-columns:1fr}}
.foot-col{display:flex; flex-direction:column; gap:6px}
.foot-col a{color:var(--ink-soft);text-decoration:none;font-size:14px}
.foot-col a:hover{color:var(--brand)}
.foot-col span{color:var(--ink-soft); font-size:13px}
.foot-brand{font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:22px}
.foot-brand b{color:var(--brand)}
.foot-brand .urdu{font-family:"Noto Nastaliq Urdu",serif;font-size:18px;color:var(--brand);margin-left:4px}
.foot-tag{font-size:13.5px;color:var(--ink-soft);margin:6px 0 6px;line-height:1.5}
.foot-tiny{font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:.08em;color:var(--ink-soft);opacity:.85}
.foot-head{font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--brand);margin-bottom:4px;font-weight:700}
.foot-team-tag{
  display:inline-block;margin-top:6px;padding:5px 10px;border-radius:999px;
  background:var(--brand);color:#fff;font-family:"JetBrains Mono",monospace;
  font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;width:fit-content;
}
.foot-base{margin-top:24px;padding-top:18px;border-top:1px dashed var(--line);font-size:12px;color:var(--ink-soft);text-align:center}

/* tweak body padding for landing pages */
body.has-nav{padding:0 18px 0}

/* CTA buttons inside flex cards shouldn't stretch */
.card .btn, .hero-card .btn { align-self: flex-start; }

/* ---- RTL polish when body.lang-ur is active ---- */
body.lang-ur .eyebrow,
body.lang-ur label.field,
body.lang-ur .chip,
body.lang-ur .word,
body.lang-ur .tag,
body.lang-ur .aqi-cat,
body.lang-ur .vmain,
body.lang-ur .vmirror,
body.lang-ur .why,
body.lang-ur .src-tag,
body.lang-ur ul.actions li{
  font-family:"Noto Nastaliq Urdu","Inter",serif;
}
body.lang-ur .eyebrow,
body.lang-ur label.field { direction:rtl; text-align:right }
body.lang-ur .chips { justify-content:flex-end }
body.lang-ur ul.actions li{ direction:rtl; text-align:right }
body.lang-ur ul.actions li::before{ margin-left:0; margin-right:0 }
body.lang-ur .demo-note{ direction:rtl; text-align:right; font-family:"Noto Nastaliq Urdu",serif; line-height:1.9 }
body.lang-ur .vrisk{ direction:rtl; text-align:right }
/* Urdu Nastaliq needs bigger line-height in buttons */
body.lang-ur .chip{ line-height:1.9; padding:11px 16px }
body.lang-ur .cta{ font-family:"Noto Nastaliq Urdu",serif; line-height:1.8 }
body.lang-ur #ask{ font-family:"Noto Nastaliq Urdu",serif; line-height:1.8; padding-left:20px; padding-right:20px }
