/* Self-hosted: no third-party font requests. */
@font-face{font-family:"Anton";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/anton-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Anton";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/anton-latin-ext-400-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Inter";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/inter-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Inter";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/inter-latin-ext-400-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Inter";font-style:normal;font-weight:600;font-display:swap;src:url(fonts/inter-latin-600-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Inter";font-style:normal;font-weight:600;font-display:swap;src:url(fonts/inter-latin-ext-600-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Inter";font-style:normal;font-weight:800;font-display:swap;src:url(fonts/inter-latin-800-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Inter";font-style:normal;font-weight:800;font-display:swap;src:url(fonts/inter-latin-ext-800-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Noto Sans Devanagari";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/noto-sans-devanagari-devanagari-400-normal.woff2) format("woff2");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}
@font-face{font-family:"Noto Sans Devanagari";font-style:normal;font-weight:600;font-display:swap;src:url(fonts/noto-sans-devanagari-devanagari-600-normal.woff2) format("woff2");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}
@font-face{font-family:"Noto Sans Devanagari";font-style:normal;font-weight:800;font-display:swap;src:url(fonts/noto-sans-devanagari-devanagari-800-normal.woff2) format("woff2");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/ibm-plex-mono-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:500;font-display:swap;src:url(fonts/ibm-plex-mono-latin-500-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  --bone:#f6efe2; --bone-2:#eadfce; --ink:#0b0b0b; --ink-2:#49423d; --muted:#5e554d;
  --line:#cdbda6; --line-ink:#0b0b0b; --accent:#e21f26; --accent-ink:#b5161c;
  --paper-card:#fffaf1; --signal:#e21f26; --signal-deep:#b5161c; --positive:#176845; --hold:#0d47a1;
  --sun:#ffb21a; --warn-bg:#efe7cf;
  --display:"Anton","Noto Sans Devanagari",Impact,sans-serif;
  --sans:"Inter","Noto Sans Devanagari",system-ui,sans-serif;
  --mono:var(--sans); /* the old sheet's mono labels and buttons use the body face */
  --radius:0px; --radius-sm:0px; --shadow:none;
  color-scheme:light;
}
html,body{background:var(--bone);color:var(--ink);margin:0}
body{border-top:6px solid var(--accent);font-family:var(--sans);font-size:17px;line-height:1.55}
*{border-radius:0!important}
main *,[data-reveal]{opacity:1!important;transform:none!important;clip-path:none!important;visibility:visible!important}
.guide-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;
  max-width:1180px;margin:0 auto;padding:16px clamp(16px,5vw,64px) 0}
.guide-bar a.back{font:800 .78rem var(--sans);letter-spacing:.13em;text-transform:uppercase;color:var(--accent);text-decoration:none}
.guide-actions{display:flex;gap:10px;flex-wrap:wrap}
.guide-actions button,.guide-actions a{font:800 .9rem var(--sans);padding:8px 16px;border:1.6px solid var(--ink);
  background:transparent;color:var(--ink);box-shadow:4px 4px 0 var(--ink);cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:6px}
.guide-actions [aria-pressed="true"],.guide-actions a.pdf{background:var(--ink);color:var(--bone)}
.guide-actions button:active,.guide-actions a:active{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--ink)}
.guide-actions :focus-visible{outline:3px solid #ff6a00;outline-offset:3px}

/* Type: Anton headlines at its one weight, Inter for everything else, bold is
   always the 800 cut. kit.css is the old site's sheet; these rules set the
   kit's own look over it so every guide reads the same. */
h1,h2,h3,.display,.head,.s-label{font-family:var(--display);font-weight:400;letter-spacing:.005em;text-transform:none;text-wrap:balance}
h1{font-size:clamp(2.4rem,9vw,3.6rem);line-height:1.02;margin:0}
h2,h2.head,.sec-head .s-label{font-family:var(--display);font-weight:400;font-size:1.65rem;line-height:1.1;letter-spacing:.005em;margin:0;max-width:none}
h3{font-size:1.3rem;line-height:1.15}
b,strong,.note strong{font-weight:800}
p{max-width:none}
.lead{font-size:1.05rem;line-height:1.5;color:var(--ink-2);max-width:60ch}
.muted{color:var(--muted)}
.kicker,.eyebrow{display:flex;gap:8px;font:800 .74rem var(--sans);letter-spacing:.13em;text-transform:uppercase;color:var(--accent);margin:0}
html[data-lang=hi] .kicker{letter-spacing:.02em}
.eyebrow::before{content:none}
.num-tag,.law-num,.step-n span{font-family:var(--sans);font-weight:800;letter-spacing:.13em;color:var(--accent)}
li::marker{color:var(--accent);font-weight:800}
main a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:2px}

/* Layout: one centred column; a header card, then each section's numbered
   heading over its card. */
main .wrap{max-width:752px;margin-inline:auto;padding-inline:16px}
.page-head{display:flex;flex-direction:column;gap:14px;margin-top:24px;padding:24px;border:1.6px solid var(--ink);
  background:var(--paper-card);box-shadow:12px 12px 0 var(--bone-2)}
.page-head h1{margin:0;font-weight:400;letter-spacing:.005em;font-size:clamp(2.4rem,9vw,3.6rem)}
.page-head .lead,.page-head .note{margin:0}
.page-body{display:flex;flex-direction:column;gap:28px;padding-block:32px 64px}
.page-body>section{display:flex;flex-direction:column;gap:14px;padding-block:0}
.page-body>section>*{margin-block:0!important}
.page-body>hr.rule{display:none}
.sec-head{display:flex;align-items:baseline;gap:14px}
.sec-head .s-num{all:unset;flex:none;font:800 .8rem var(--sans);letter-spacing:.13em;color:var(--accent)}
.card,.law-card,.res-card,.briar-card,.map-card,.note,section.invert,.mh-table{
  background:var(--paper-card)!important;border:.8px solid var(--ink)!important;box-shadow:8px 8px 0 var(--bone-2)!important;color:var(--ink)!important}
.card{padding:20px;gap:10px}
.card>*{margin-block:0}
.card p:not(.muted){font-size:1rem;color:var(--ink)}
.note{padding:16px 20px;font-size:1rem}
.note.warn,.card.warn{border:1.6px solid var(--accent)!important;background:var(--warn-bg)!important}
section.invert{padding:20px}
section.invert *{color:var(--ink)!important}
:is(.card,.note) :is(ul,ol):not(.rows,.tag-list,.clean){margin:0;padding-left:1.3em!important;display:flex!important;flex-direction:column;gap:6px!important}
/* Rows (a bold point, then its detail) sit in a card like any other list. */
ul.rows{margin:0;padding:0 20px;background:var(--paper-card);border:.8px solid var(--ink);box-shadow:8px 8px 0 var(--bone-2)}
:is(.card,.note) ul.rows{padding:0;background:none;border:0;box-shadow:none}
ul.rows li{padding:14px 0}
ul.rows li:first-child{border-top:0}
ul.rows li:last-child{border-bottom:0}
/* Icon steps take the sections' shape: number and heading on one line, the
   points under them at full width. */
.step{grid-template-columns:auto 1fr;gap:14px;align-items:baseline}
.step-n{flex-direction:row;align-items:center;gap:8px}
.step-n .icon-lg svg{width:22px;height:22px}
.step-body{display:contents}
.step-body>*{grid-column:1/-1;margin:0!important}
.step-body>.head{grid-column:2}
.btn{font:800 .9rem var(--sans);letter-spacing:0;padding:10px 18px;border:1.6px solid var(--ink);background:var(--ink);color:var(--bone);box-shadow:4px 4px 0 var(--accent);text-decoration:none}
.btn.ghost{background:transparent;color:var(--ink);border-color:var(--ink)}
.btn:hover,.btn.ghost:hover{background:var(--ink);color:var(--bone);border-color:var(--ink);box-shadow:4px 4px 0 var(--accent)}
/* A button label as it reads on the phone ("Settings"). */
.ui{font:600 .85em var(--sans);background:var(--sun);color:var(--ink);padding:1px 6px;border:1px solid var(--ink);white-space:nowrap}
/* A diagram drawn in text; it keeps its spacing and scrolls on narrow screens. */
pre.flow{font:600 .8rem "IBM Plex Mono",ui-monospace,monospace;color:var(--ink-2);white-space:pre;overflow-x:auto;margin:0;padding:12px;border:1px dashed var(--line);background:var(--bone)}
.contact{text-transform:none!important;letter-spacing:0!important;white-space:normal!important;overflow-wrap:anywhere;
  font:600 .85rem var(--sans)!important;padding:0!important;border:0!important;background:none!important;box-shadow:none!important;display:inline!important}
.law-actions{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:2px!important;grid-template-columns:none!important}
.mh-wrap{overflow-x:auto}
table{width:100%}
td,th{overflow-wrap:anywhere}
.map-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))!important;gap:20px!important}
.map-card{margin:0!important}
.map-open{display:block!important;width:100%!important;padding:0!important;border:0!important;background:none!important;box-shadow:none!important;cursor:zoom-in}
.map-open img{display:block;width:100%;height:auto}
.tag-list{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:6px}
.tag-list li{border:.8px solid #0b0b0b;background:#f6efe2;padding:4px 10px;font:600 .85rem var(--sans);overflow-wrap:anywhere;max-width:100%}
html:not([data-lang=hi]) .lang-hi{display:none!important}
html[data-lang=hi] .lang-en{display:none!important}
html[data-lang=hi] :is(h1,h2,h3,.display,.head,.s-label){font-family:"Noto Sans Devanagari",sans-serif;font-weight:800;letter-spacing:0;line-height:1.3}
@media print{
  .guide-bar{display:none}
  body{border-top:0}
  .mh-row,.law-card,.res-card,.card,.note,.map-card,tr{break-inside:avoid}
  h2,h3,.sec-head{break-after:avoid}
  main *{break-before:auto!important}
  .map-grid{display:block!important}
  .map-card{margin-bottom:6mm!important}
  .map-open img{max-height:200mm;object-fit:contain}
  table{table-layout:fixed}
}
/* Each section is one card with its heading inside (Briar's original layout).
   A card or row list directly under the heading joins the section's card. */
.page-body>section:has(>.sec-head,>.step){gap:10px;padding:20px;border:.8px solid var(--ink);background:var(--paper-card);box-shadow:8px 8px 0 var(--bone-2)}
.page-body>section:has(>.sec-head+.card.warn){border:1.6px solid var(--accent);background:var(--warn-bg)}
.page-body>section:has(>.sec-head,>.step)>:is(.card,ul.rows),.page-body>section>.step>.step-body>ul.rows{padding:0!important;border:0!important;box-shadow:none!important;background:none!important}
