:root{
    --brand:#650b58; --brand-d:#420639; --gold:#d9a531; --ink:#1f1a1e; --muted:#61585f;
    --bg:#f8f6f7; --card:#ffffff; --line:#e9e2e7; --tint:#f4e8f2;
  }
  *{box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{margin:0;font-family:"Cairo",system-ui,sans-serif;color:var(--ink);background:var(--bg);line-height:1.8}
  a{color:var(--brand)}
  img{max-width:100%;display:block}
  .wrap{max-width:1120px;margin:0 auto;padding:0 20px}
  header.top{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}
  .nav{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 0}
  .brand img{height:46px;width:auto}
  .links{display:flex;gap:16px;flex-wrap:wrap}
  .links a{text-decoration:none;color:var(--ink);font-weight:600;font-size:15px}
  .links a:hover{color:var(--brand)}
  .hero{position:relative;color:#fff;padding:96px 0 90px;background:var(--brand-d) url(/images/thalathiya-1.jpg) center/cover no-repeat}
  .hero::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(66,6,57,.93) 0%,rgba(101,11,88,.78) 60%,rgba(101,11,88,.55) 100%)}
  .hero .wrap{position:relative}
  .hero h1{font-size:clamp(28px,5vw,48px);line-height:1.3;margin:0 0 14px}
  .hero p{font-size:clamp(16px,2.2vw,20px);max-width:720px;opacity:.95;margin:0 0 26px}
  .tag{display:inline-block;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.3);padding:4px 14px;border-radius:999px;font-size:14px;margin-bottom:18px}
  .btns{display:flex;gap:12px;flex-wrap:wrap}
  .btn{display:inline-block;padding:12px 26px;border-radius:10px;font-weight:700;text-decoration:none}
  .btn.gold{background:var(--gold);color:#1d1606}
  .btn.ghost{border:2px solid rgba(255,255,255,.75);color:#fff}
  section{padding:64px 0}
  h2{font-size:clamp(24px,3.4vw,32px);margin:0 0 10px;color:var(--brand-d)}
  .lead{color:var(--muted);max-width:780px;margin:0 0 32px}
  .stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin-top:-44px;position:relative}
  .stat{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:20px 14px;text-align:center;box-shadow:0 6px 20px rgba(0,0,0,.06)}
  .stat b{display:block;font-size:30px;color:var(--brand)}
  .stat span{color:var(--muted);font-size:14px}
  .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px}
  .card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:24px}
  .card h3{margin:0 0 8px;font-size:19px}
  .card p{margin:0;color:var(--muted)}
  .ico{width:46px;height:46px;border-radius:12px;background:var(--tint);color:var(--brand);display:grid;place-items:center;font-size:22px;margin-bottom:12px}
  .alt{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
  .vm{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;margin-bottom:26px}
  .vm .card{border-top:4px solid var(--brand)}
  .values{display:flex;flex-wrap:wrap;gap:10px;margin:0;padding:0;list-style:none}
  .values li{background:var(--tint);color:var(--brand-d);padding:6px 16px;border-radius:999px;font-weight:600}
  .legal{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:26px}
  .legal div{border-right:4px solid var(--gold);background:var(--bg);padding:14px 18px;border-radius:8px}
  .legal b{display:block}
  .timeline{list-style:none;margin:0;padding:0;border-right:3px solid var(--tint)}
  .timeline li{position:relative;padding:0 26px 22px 0}
  .timeline li::before{content:"";position:absolute;right:-9px;top:8px;width:15px;height:15px;border-radius:50%;background:var(--brand);border:3px solid #fff;box-shadow:0 0 0 2px var(--brand)}
  .timeline b{color:var(--brand);font-size:20px;display:block}
  .timeline p{margin:0;color:var(--muted)}
  .gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
  .gallery figure{margin:0;border-radius:12px;overflow:hidden;background:#ddd;position:relative;aspect-ratio:4/3}
  .gallery img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
  .gallery figure:hover img{transform:scale(1.04)}
  .gallery figcaption{position:absolute;inset:auto 0 0 0;background:linear-gradient(transparent,rgba(0,0,0,.7));color:#fff;font-size:13px;padding:22px 10px 8px}
  .people{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px}
  .person{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:22px 14px;text-align:center}
  .person .av{width:120px;height:120px;border-radius:50%;margin:0 auto 12px;background:var(--tint);color:var(--brand);display:grid;place-items:center;font-size:30px;font-weight:800;overflow:hidden}
  .person .av img{width:100%;height:100%;object-fit:cover}
  .person h3{margin:0;font-size:17px}
  .person span{color:var(--muted);font-size:14px}
  .person.lead-p{border-color:var(--brand);box-shadow:0 6px 20px rgba(101,11,88,.12)}
  .team{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
  .team div{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:14px 16px}
  .team b{display:block}
  .team span{color:var(--muted);font-size:14px}
  .partners{display:flex;flex-wrap:wrap;gap:10px}
  .partners span{background:#fff;border:1px solid var(--line);border-radius:10px;padding:8px 14px;font-weight:600;font-size:15px}
  .fb{display:grid;grid-template-columns:1fr minmax(0,500px);gap:28px;align-items:start}
  .fb iframe{width:100%;max-width:500px;height:640px;border:0;border-radius:12px;background:#fff}
  a.card.news{text-decoration:none;color:inherit;display:flex;flex-direction:column;gap:2px}
  a.card.news:hover{border-color:var(--brand)}
  .news .date{color:var(--gold);font-weight:700;font-size:14px}
  .news .more{margin-top:auto;padding-top:10px;color:var(--brand);font-weight:700;font-size:14px}
  .pay{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;max-width:860px;margin:0 auto 24px;text-align:right}
  .pay div{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);border-radius:12px;padding:12px 16px}
  .pay b{display:block;font-size:14px;opacity:.85}
  .pay span{direction:ltr;unicode-bidi:embed;font-weight:700;font-size:17px}
  .places{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}
  .donate{background:var(--brand-d);color:#fff;border-radius:18px;padding:40px;text-align:center}
  .donate h2{color:#fff}
  .donate p{opacity:.92;max-width:640px;margin:0 auto 22px}
  .contact{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}
  .contact .card a{font-weight:700;text-decoration:none;direction:ltr;unicode-bidi:embed}
  footer{background:#1c0a19;color:#d9cdd6;padding:28px 0;font-size:14px}
  footer .wrap{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}
  .en{direction:ltr;text-align:left;font-size:15px;color:var(--muted);margin-top:28px;border-top:1px dashed var(--line);padding-top:18px}
  
  .card .reg{display:inline-block;margin-top:12px;padding:6px 14px;border-radius:8px;background:#25d366;color:#fff;font-weight:700;font-size:14px;text-decoration:none}
  .card .reg:hover{background:#1da851}
  #training .grid .card{display:flex;flex-direction:column}
  #training .grid .card .reg{margin-top:auto;align-self:flex-start}
  #training .grid .card p{margin-bottom:12px}
  #askbtn{position:fixed;bottom:18px;left:18px;z-index:50;background:var(--brand);color:#fff;border:0;border-radius:999px;padding:12px 20px;font:700 16px "Cairo",sans-serif;box-shadow:0 6px 20px rgba(0,0,0,.25);cursor:pointer}
  #askbot{position:fixed;bottom:76px;left:18px;z-index:50;width:min(360px,calc(100vw - 36px));height:min(520px,calc(100vh - 110px));background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 12px 40px rgba(0,0,0,.25);display:none;flex-direction:column;overflow:hidden}
  #askbot.open{display:flex}
  #askbot .hd{background:var(--brand);color:#fff;padding:12px 16px;display:flex;justify-content:space-between;align-items:center;font-weight:700}
  #askbot .hd button{background:none;border:0;color:#fff;font-size:22px;cursor:pointer;line-height:1}
  #askbot .bd{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:8px;background:var(--bg)}
  #askbot .msg{background:#fff;border:1px solid var(--line);border-radius:12px 12px 12px 4px;padding:10px 12px;font-size:14px;max-width:92%;align-self:flex-start;white-space:pre-line}
  #askbot .me{background:var(--tint);border-color:var(--tint);border-radius:12px 12px 4px 12px;align-self:flex-end}
  #askbot .opts{display:flex;flex-wrap:wrap;gap:6px}
  #askbot .opts button,#askbot .opts a{background:#fff;border:1.5px solid var(--brand);color:var(--brand);border-radius:999px;padding:5px 12px;font:600 13px "Cairo",sans-serif;cursor:pointer;text-decoration:none}
  #askbot .opts a.wa{background:#25d366;border-color:#25d366;color:#fff}
  .vgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;align-items:start}
  .vgrid figure{margin:0}
  .vgrid video{width:100%;max-height:420px;border-radius:12px;background:#000;display:block}
  .vgrid figcaption{font-size:14px;margin-top:6px;color:var(--muted)}
  @media(max-width:700px){.award{grid-template-columns:1fr!important}}
  .menubtn{display:none;background:var(--brand);color:#fff;border:0;border-radius:10px;padding:8px 14px;font:700 15px "Cairo",sans-serif;cursor:pointer}
  @media (max-width:860px){ .menubtn{display:block} .links{display:none;position:absolute;top:100%;right:0;left:0;background:#fff;border-bottom:1px solid var(--line);flex-direction:column;gap:0;padding:6px 20px 12px;box-shadow:0 10px 20px rgba(0,0,0,.08)} .links.open{display:flex} .links a{padding:10px 0;border-bottom:1px solid var(--line)} .nav{position:relative} .hero{padding:64px 0 70px} .fb{grid-template-columns:1fr} }
  .swipe-hint{display:none}
  /* MOBILE LAYOUT */
  @media (max-width:700px){
    .wrap{padding:0 16px}
    section{padding:40px 0}
    h2{font-size:24px}
    .lead{font-size:15px;margin-bottom:20px}
    .brand img{height:38px}
    .hero{padding:44px 0 64px}
    .hero p{font-size:15px}
    .btns .btn{padding:10px 18px;font-size:15px}
    .stats{grid-template-columns:repeat(2,1fr);gap:10px;margin-top:-36px}
    .stat{padding:14px 8px}.stat b{font-size:24px}.stat span{font-size:13px}
    .card{padding:18px}
    .card h3{font-size:17px}
    .card p{font-size:14px}
    .ico{width:40px;height:40px;font-size:19px;margin-bottom:8px}
    /* card rows and photo galleries become swipeable rows */
    .grid,.gallery,.vgrid,.places{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding-bottom:10px;margin-inline:-16px;padding-inline:16px;scrollbar-width:thin}
    .grid>*,.places>*{flex:0 0 82%;scroll-snap-align:start}
    .gallery>figure{flex:0 0 78%;scroll-snap-align:start}
    .vgrid>figure{flex:0 0 70%;scroll-snap-align:start}
    .swipe-hint{display:block;color:var(--muted);font-size:13px;margin:-4px 0 8px}
    .people{grid-template-columns:repeat(2,1fr);gap:10px}
    .person{padding:14px 8px}.person .av{width:84px;height:84px}.person h3{font-size:15px}.person span{font-size:13px}
    .team{grid-template-columns:repeat(2,1fr);gap:8px}
    .team div{padding:10px 12px}.team b{font-size:14px}.team span{font-size:12px}
    .partners span{font-size:13px;padding:6px 10px}
    .timeline li{padding-bottom:16px}
    .donate{padding:26px 16px}
    .pay span{font-size:15px}
    .fb iframe{height:520px}
    .en{font-size:13px}
    #training .card[style*="justify-content:space-between"]{flex-direction:column;align-items:stretch}
    #training .card .btns .btn{flex:1;text-align:center}
  }

  h1.ph{font-size:clamp(24px,3.4vw,32px);margin:0 0 10px;color:var(--brand-d);line-height:1.4}
  .crumbs{font-size:14px;color:var(--muted);margin:0 0 6px}
  .crumbs a{text-decoration:none}
  .links a.on{color:var(--brand);box-shadow:inset 0 -2px 0 var(--brand)}
  .hub{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}
  .hub a.card{text-decoration:none;color:inherit;display:flex;flex-direction:column;transition:border-color .2s,transform .2s}
  .hub a.card:hover{border-color:var(--brand);transform:translateY(-2px)}
  .hub .go{margin-top:auto;padding-top:10px;color:var(--brand);font-weight:700;font-size:14px}
  .more-pages{padding:34px 0;background:#fff;border-top:1px solid var(--line)}
  .more-pages h2{font-size:20px;margin-bottom:14px}
  .pills{display:flex;flex-wrap:wrap;gap:8px}
  .pills a{background:var(--tint);color:var(--brand-d);padding:6px 14px;border-radius:999px;font-weight:600;text-decoration:none;font-size:15px}
  .pills a:hover{background:var(--brand);color:#fff}
  footer .flinks{display:flex;flex-wrap:wrap;gap:6px 14px;width:100%;margin-bottom:10px}
  footer .flinks a{color:#d9cdd6;text-decoration:none}
  footer .flinks a:hover{color:#fff}
  @media (max-width:700px){.hub{display:grid;grid-template-columns:1fr 1fr;gap:10px}.hub a.card{padding:14px}.hub .go{font-size:13px}.more-pages{padding:24px 0}.pills a{font-size:14px}}
  /* SITE FORMS */
  form.sitef{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}
  form.sitef label{display:flex;flex-direction:column;font-weight:600;font-size:14px;gap:4px}
  form.sitef .full{grid-column:1/-1}
  form.sitef input,form.sitef select,form.sitef textarea{font:inherit;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink)}
  form.sitef input:focus,form.sitef select:focus,form.sitef textarea:focus{outline:2px solid var(--brand);border-color:var(--brand)}
  form.sitef button{justify-self:start;border:0;cursor:pointer;background:var(--brand);color:#fff;font:inherit;font-weight:700;padding:12px 28px;border-radius:10px}
  form.sitef button:disabled{opacity:.6}
  form.sitef .fmsg{font-weight:700;color:var(--brand);margin:0}
  form.sitef .hp{position:absolute;width:1px;height:1px;padding:0;border:0;opacity:0;pointer-events:none;overflow:hidden}
  form.sitef{position:relative}
  .card .reg.form{background:var(--brand);margin-inline-start:6px}
  .card .reg.form:hover{background:var(--brand-d)}
  @media (max-width:700px){form.sitef{grid-template-columns:1fr}}
