/* Bap Ka Rasta — v3 static pages (mobile-first, responsive) */
@font-face{font-family:'Bharat Sans';font-style:normal;font-weight:400 800;font-display:swap;src:url(fonts/bharat-sans-400-800-latin.9d14431a27.woff2) format('woff2')}
@font-face{font-family:'Bharat Display';font-style:normal;font-weight:600 800;font-display:swap;src:url(fonts/bharat-display-600-800-latin.074ed9c674.woff2) format('woff2')}
@font-face{font-family:'Bharat Text';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/bharat-text-700-latin.e8f0fc0cab.woff2) format('woff2')}
@font-face{font-family:'Bharat Serif';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/bharat-serif-400-latin.bb748ffc6a.woff2) format('woff2')}
@font-face{font-family:'Share Tech Mono';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/share-tech-mono-400-latin.41e6b9f297.woff2) format('woff2')}

:root{
  --tar:#15110e; --paper:#f7efe0; --newsprint:#f1e9d6; --ink:#1d1814;
  --hood:#ffcb1f; --pink:#ff3fa4; --cyan:#2ee6ff; --red:#b3121b;
  --muted:#b9ad9a; --line:rgba(247,239,224,.16);
  --f-display:"Bharat Display","Bharat Sans",system-ui,sans-serif;
  --f-ui:"Bharat Sans","Bharat Text",system-ui,sans-serif;
  --f-news:"Bharat Serif",Georgia,serif;
  --f-mono:"Share Tech Mono",ui-monospace,monospace;
  color-scheme:dark;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:
  radial-gradient(1200px 600px at 50% -10%,rgba(255,203,31,.08),transparent 60%),
  var(--tar);color:var(--paper);font-family:var(--f-ui);font-size:17px;line-height:1.65;
  overflow-x:hidden;-webkit-tap-highlight-color:transparent}
a{color:var(--hood);text-decoration:underline;text-underline-offset:3px}
a:hover{color:#fff}
img{max-width:100%;height:auto;-webkit-user-drag:none;user-select:none}
.wrap{width:100%;max-width:860px;margin:0 auto;padding:0 20px}

/* ---------- header ---------- */
.top{position:sticky;top:0;z-index:10;background:rgba(21,17,14,.95);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:2px solid var(--line)}
.top .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;padding-block:10px}
.brand{font-family:var(--f-display);font-weight:800;font-size:24px;line-height:1;color:var(--hood);text-decoration:none;letter-spacing:-.01em}
.brand span{display:block;font-family:var(--f-ui);font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);font-weight:700;margin-top:3px}
.top nav{margin-left:auto;display:flex;flex-wrap:wrap;gap:4px 14px;font-size:14px;font-weight:700}
.top nav a{color:var(--paper);text-decoration:none;padding:6px 0;border-bottom:2px solid transparent;white-space:nowrap}
.top nav a:hover,.top nav a:focus-visible,.top nav a[aria-current="page"]{color:var(--hood);border-bottom-color:var(--hood)}

/* ---------- page ---------- */
main{padding:30px 0 56px}
.kicker{display:inline-flex;align-items:center;gap:8px;font-family:var(--f-display);font-weight:800;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--red);background:var(--newsprint);padding:4px 12px 2px;border-radius:3px;margin:0 0 14px}
.dark .kicker{color:var(--hood);background:rgba(255,203,31,.12)}
h1{font-family:var(--f-display);font-weight:800;font-size:clamp(32px,7vw,56px);line-height:1.02;margin:0 0 10px;letter-spacing:-.02em;text-wrap:balance}
h2{font-family:var(--f-display);font-weight:800;font-size:clamp(21px,4.4vw,30px);line-height:1.15;margin:36px 0 10px;text-wrap:balance}
h3{font-family:var(--f-display);font-weight:800;font-size:18px;margin:24px 0 6px}
p{margin:0 0 14px}
.lead{font-family:var(--f-news);font-size:clamp(18px,3.4vw,23px);line-height:1.5;color:#fff2d8;margin-bottom:22px}
ul,ol{margin:0 0 16px;padding-left:22px}
li{margin:0 0 8px}
.meta{font-size:14px;color:var(--muted);margin:0 0 24px}
.card{background:linear-gradient(180deg,rgba(241,233,214,.06),rgba(241,233,214,.02));border:1px solid var(--line);border-radius:14px;padding:18px 20px;margin:22px 0}
.card h2,.card h3{margin-top:0}
.card summary{cursor:pointer;font-weight:700}
.card summary::marker{color:var(--hood)}
.paper{background:var(--newsprint);color:var(--ink);border-radius:4px;padding:20px 22px;box-shadow:0 18px 40px rgba(0,0,0,.45);margin:24px 0}
.paper a{color:var(--red)}
.paper h2,.paper h3{color:var(--ink)}
.grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));margin:22px 0}
.tile{background:rgba(241,233,214,.05);border:1px solid var(--line);border-radius:12px;padding:14px 16px;min-width:0}
.tile b{display:block;font-family:var(--f-display);font-size:18px;color:var(--hood);margin-bottom:2px}
.tile span{font-size:15px;color:#e7ddcb;overflow-wrap:anywhere}
code,kbd,pre{font-family:var(--f-mono);font-size:.92em}
code,kbd{background:rgba(247,239,224,.1);padding:1px 6px;border-radius:5px;overflow-wrap:anywhere}
kbd{border:1px solid var(--line);border-bottom-width:2px}
pre{background:rgba(247,239,224,.08);padding:12px 14px;border-radius:10px;overflow-x:auto;-webkit-overflow-scrolling:touch;line-height:1.45}
pre code{background:none;padding:0}

/* ---------- tables (phone par scroll) ---------- */
.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:14px 0 22px;border-radius:10px;border:1px solid var(--line)}
table{width:100%;min-width:520px;border-collapse:collapse;margin:0;font-size:15.5px}
th,td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top;overflow-wrap:anywhere}
th{font-family:var(--f-display);color:var(--hood);font-size:13.5px;letter-spacing:.03em;white-space:nowrap}
tr:last-child td{border-bottom:0}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--f-display);font-weight:800;font-size:19px;line-height:1;padding:13px 22px 10px;border-radius:12px;background:var(--hood);color:var(--ink);text-decoration:none;border:0;box-shadow:0 5px 0 #9c7400;cursor:pointer;text-align:center}
.btn:hover{background:#ffd84a;color:var(--ink)}
.btn:active{transform:translateY(3px);box-shadow:0 2px 0 #9c7400}
.btn:focus-visible{outline:3px solid var(--cyan);outline-offset:3px}
.btn img{width:20px;height:20px;display:block}
.btn.ghost{background:transparent;color:var(--paper);border:2px solid var(--hood);box-shadow:none}
.btn.ghost:hover{background:rgba(255,203,31,.12);color:#fff}
.btn-coffee{background:#ff8a3d;box-shadow:0 5px 0 #a63f0d;color:#2a0f00}
.btn-coffee:hover{background:#ffa15e;color:#2a0f00}
.actions{display:flex;flex-wrap:wrap;gap:12px;margin:26px 0 8px}

/* ---------- donate ---------- */
.donate{position:relative;margin:26px 0;padding:20px;border-radius:18px;background:
  radial-gradient(600px 200px at 100% 0%,rgba(255,138,61,.16),transparent 60%),
  rgba(241,233,214,.05);border:2px solid rgba(255,138,61,.55)}
.donate-main{display:flex;gap:16px;align-items:flex-start}
.donate-main img{flex:none;width:56px;height:56px}
.donate-main h2{margin:0 0 4px;font-size:clamp(20px,4vw,26px);color:#ffd9c2}
.donate-main p{margin:0;font-size:15.5px;line-height:1.55;color:#f3e6d6}
.donate-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.donate-fine{margin:12px 0 0;font-size:13px;color:var(--muted)}

/* ---------- form ---------- */
form.contact{display:grid;gap:14px;margin:20px 0}
label{display:block;font-weight:700;font-size:15px;margin-bottom:5px}
input,textarea,select{width:100%;font:16px/1.4 var(--f-ui);color:var(--ink);background:#fffdf7;border:2px solid var(--ink);border-radius:10px;padding:11px 13px}
input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--cyan);outline-offset:2px}
textarea{min-height:150px;resize:vertical}
.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.say{margin:0;font-size:15px;font-weight:700;color:#6ff0b0;min-height:1.4em}
.say.bad{color:#ff9b9b}
.hint{font-size:14px;color:var(--muted);margin-top:-6px}

/* ---------- footer ---------- */
footer{border-top:2px solid var(--line);padding:24px 0 38px;font-size:15px;color:var(--muted)}
footer .wrap{display:flex;flex-wrap:wrap;gap:8px 20px;align-items:center}
footer a{color:var(--paper);text-decoration:none;font-weight:700}
footer a:hover,footer a:focus-visible{color:var(--hood)}
footer .by{margin-left:auto}

/* ---------- mobile ---------- */
@media (max-width:640px){
  body{font-size:16px;line-height:1.6}
  .wrap{padding:0 16px}
  .top .wrap{padding-block:9px;gap:6px 12px}
  .brand{font-size:21px}
  .brand span{font-size:9.5px;letter-spacing:.18em}
  .top nav{margin-left:0;width:100%;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;gap:0 16px;font-size:13.5px;padding-bottom:2px;scrollbar-width:none}
  .top nav::-webkit-scrollbar{display:none}
  .top nav a{padding:5px 0 7px}
  main{padding:22px 0 44px}
  h1{font-size:clamp(28px,8.6vw,40px)}
  .lead{font-size:17.5px}
  .kicker{font-size:11.5px;padding:3px 10px 1px;margin-bottom:10px}
  .card{padding:15px 16px;border-radius:12px}
  .paper{padding:16px;border-radius:6px}
  .grid{grid-template-columns:1fr;gap:10px}
  .donate{padding:16px}
  .donate-main{flex-direction:column;gap:10px}
  .donate-main img{width:44px;height:44px}
  .donate-actions .btn,.actions .btn{flex:1 1 100%;width:100%}
  .btn{font-size:17px;padding:13px 16px 10px}
  table{min-width:480px;font-size:14.5px}
  th,td{padding:9px 10px}
  footer{padding:20px 0 34px;font-size:14px}
  footer .by{margin-left:0;width:100%;padding-top:2px}
}
@media (max-width:380px){
  .top nav{font-size:12.5px;gap:0 13px}
  h1{font-size:26px}
  table{min-width:430px;font-size:14px}
}

/* ---------- motion / print ---------- */
@media (prefers-reduced-motion:reduce){
  *{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}
@media print{
  .top,footer,.actions,.donate{display:none!important}
  body{background:#fff;color:#000}
  a{color:#000}
}
