
/* DHOLERA LAND VALUE RECORD
   Palette and typefaces are set by DESIGN-LOCK-V2.json, entry
   dholera-property.com: gazette vermillion on a near white warm sheet.

   FOUR TOKENS, and only four:
     paper    #FBF8F4   near white warm sheet, L* 97.6
     ink      #14110D   rich near black, L* 7.4, body contrast 17.8:1
     accent   #B03A1F   gazette vermillion, the seal and rule colour
     support  #8A7B63   muted neutral for hairlines and secondary rules
   Everything else on this page is one of those four, an alpha of one of
   those four, or nothing at all. No gradients, no shadows, no tinted
   panels, no rounded cards. Hairlines and whitespace do the structural work.

   The lock's paper value is already held by another property in the network
   ban list, so the sheet is shifted by one step in the blue channel, a
   difference of about 0.2 dE and invisible to the eye. Nothing else in the
   lock is altered: ink, accent, support and all three typefaces are as
   assigned. */

@font-face{font-family:'Bodoni Moda';src:url(/fonts/BodoniModa-var.woff2) format('woff2');font-weight:400 900;font-style:normal;font-display:swap}
@font-face{font-family:'Source Serif 4';src:url(/fonts/SourceSerif4-var.woff2) format('woff2');font-weight:200 900;font-style:normal;font-display:swap}
@font-face{font-family:'Source Serif 4';src:url(/fonts/SourceSerif4-italic-var.woff2) format('woff2');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:'Azeret Mono';src:url(/fonts/AzeretMono-var.woff2) format('woff2');font-weight:100 900;font-style:normal;font-display:swap}

:root{
  --paper:#FBF8F4;
  --ink:#14110D;
  --accent:#B03A1F;
  --support:#8A7B63;

  /* alphas of the four, never a fifth colour */
  --ink-2:rgba(20,17,13,.66);
  --ink-3:rgba(20,17,13,.46);
  --hair:rgba(138,123,99,.42);
  --hair-2:rgba(138,123,99,.72);

  --disp:'Bodoni Moda',serif;
  --body:'Source Serif 4',serif;
  --mono:'Azeret Mono',ui-monospace,monospace;
  --gut:1.6rem;
  --col:1180px;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--paper);color:var(--ink);
  font-family:var(--body);font-size:18px;line-height:1.6;
  font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;
  font-variation-settings:'opsz' 14;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
img,svg{max-width:100%}
a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:3px;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.skip{position:absolute;left:-9999px;top:0;background:var(--paper);color:var(--ink);border:1px solid var(--accent);padding:10px 16px;font-family:var(--mono);font-size:13px;z-index:60}
.skip:focus{left:0}

/* ---------- masthead: Bodoni, then one thin vermillion rule ---------- */
.mast{padding:0 var(--gut)}
.mast__in{max-width:var(--col);margin:0 auto;min-height:132px;display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:30px 0 14px;flex-wrap:wrap}
.mark{
  font-family:var(--disp);font-variation-settings:'opsz' 96,'wght' 400;
  font-size:clamp(30px,4.6vw,46px);line-height:.98;text-transform:uppercase;letter-spacing:.015em;
  color:var(--ink);text-decoration:none;display:block;
}
.mark:hover{text-decoration:none}
.mark span{display:block}
.mark__seal{font-variation-settings:'opsz' 96,'wght' 700}
.strip{
  display:flex;gap:0 26px;flex-wrap:wrap;padding-bottom:6px;
  font-family:var(--mono);font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:.13em;color:var(--ink-2);
}
.strip b{display:block;color:var(--support);font-weight:500;margin-bottom:2px}
.dbl{max-width:var(--col);margin:0 auto;border-top:2px solid var(--accent);height:0}
.foot .dbl{border-top:1px solid var(--hair-2);margin-bottom:30px}

.bar[hidden]{display:none}
.bar{
  position:fixed;top:0;left:0;right:0;height:46px;z-index:50;background:var(--paper);
  border-bottom:1px solid var(--accent);display:flex;align-items:center;gap:20px;
  padding:0 var(--gut);
}
.bar__mark{font-family:var(--disp);font-variation-settings:'opsz' 96;font-size:16px;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}
.bar__now{font-family:var(--mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-2);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}

/* ---------- nav ---------- */
.nav{padding:0 var(--gut);border-bottom:1px solid var(--hair)}
.nav__in{max-width:var(--col);margin:0 auto;display:flex;flex-wrap:wrap;gap:0 19px;padding:10px 0}
.nav a{font-family:var(--mono);font-size:10.5px;font-weight:400;text-transform:uppercase;letter-spacing:.09em;color:var(--ink-2);text-decoration:none;padding:6px 0;border-bottom:2px solid transparent}
.nav a:hover{color:var(--ink)}
.nav a[aria-current]{color:var(--accent);border-bottom-color:var(--accent)}

/* ---------- shell and rail ---------- */
.shell{max-width:var(--col);margin:0 auto;padding:44px var(--gut) 72px;display:block}
.rail{display:none}
@media(min-width:1200px){
  .shell{display:grid;grid-template-columns:132px minmax(0,1fr);gap:0 44px}
  .rail{display:block;position:sticky;top:26px;align-self:start}
  .rail__no{display:block;font-family:var(--mono);font-weight:500;font-size:13px;letter-spacing:.12em;color:var(--accent)}
  .rail__ref{display:block;margin-top:10px;padding-top:10px;border-top:1px solid var(--hair);font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-3);line-height:1.7}
}
main{min-width:0}

/* ---------- type ---------- */
h1{font-family:var(--disp);font-variation-settings:'opsz' 96,'wght' 400;font-weight:400;font-size:clamp(38px,6vw,64px);line-height:1.08;letter-spacing:-.005em;margin:0 0 20px;max-width:19ch}
h2{font-family:var(--disp);font-variation-settings:'opsz' 96,'wght' 400;font-weight:400;font-size:clamp(27px,3.6vw,38px);line-height:1.12;margin:0 0 8px;max-width:24ch}
h3{font-family:var(--body);font-variation-settings:'opsz' 20;font-weight:700;font-size:21px;line-height:1.3;margin:30px 0 8px}
h4{font-family:var(--mono);font-weight:500;font-size:11px;text-transform:uppercase;letter-spacing:.13em;margin:26px 0 8px;color:var(--accent)}
p{margin:0 0 16px;max-width:66ch}
.ans{font-size:21px;line-height:1.5;font-variation-settings:'opsz' 24;margin:0 0 28px;max-width:64ch;padding-left:20px;border-left:2px solid var(--accent)}
.lead{color:var(--ink-2);font-size:17px;max-width:66ch;margin:8px 0 0}
.kicker{font-family:var(--mono);font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:.15em;color:var(--support);margin:0 0 18px}
main ul,main ol{max-width:66ch;padding-left:22px;margin:0 0 18px}
main li{margin-bottom:8px}
main li::marker{color:var(--support)}
strong,b{font-weight:700}
.mono{font-family:var(--mono);font-size:.88em}
.nil{font-family:var(--mono);font-size:12px;color:var(--ink-3);text-transform:uppercase;letter-spacing:.08em}
.dag{font-family:var(--mono);color:var(--accent);font-size:.68em;font-weight:600}
.guj{font-size:1.05em}

/* ---------- the impression, struck once per sheet ---------- */
.imp{
  border:1px solid var(--hair-2);padding:3px;background:transparent;
  flex:0 0 auto;align-self:flex-start;
}
.imp__in{
  border:1px solid var(--hair);padding:8px 12px;
  display:flex;flex-direction:column;gap:2px;
  font-family:var(--mono);font-size:9.5px;font-weight:400;
  text-transform:uppercase;letter-spacing:.13em;color:var(--ink-2);
}
.imp__w{font-weight:600;color:var(--accent);border-top:1px solid var(--hair);padding-top:4px;margin-top:3px}
.js .imp{opacity:0}
.js .imp.struck{opacity:1;transition:opacity 240ms cubic-bezier(.16,1,.3,1)}

/* ---------- sections ---------- */
.sec{margin:0 0 64px}
/* the wide sheets step out under the rail. Declared after .sec so the
   shorthand above cannot reset it. */
@media(min-width:1200px){.sec.sec--bleed{margin-left:-176px}}
.sec__head{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;margin-bottom:22px}
.sec__head>div{min-width:0}

/* ---------- key figures ---------- */
.kfs{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:0;border-top:2px solid var(--accent);margin:0 0 48px}
.kf{padding:20px 24px 22px 0;border-bottom:1px solid var(--hair)}
.kf+.kf{padding-left:24px;border-left:1px solid var(--hair)}
.kf__l{display:block;font-family:var(--mono);font-size:10px;font-weight:400;text-transform:uppercase;letter-spacing:.13em;color:var(--support)}
.kf__v{display:block;font-family:var(--disp);font-variation-settings:'opsz' 96,'wght' 400;font-size:clamp(34px,4vw,46px);line-height:1.04;margin:10px 0 0;color:var(--ink)}
.kf__u{display:block;font-family:var(--mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-2);margin-top:6px}
.kf__m{display:block;font-size:14.5px;line-height:1.5;color:var(--ink-2);margin-top:12px;max-width:36ch}

/* ---------- the register table, set like a stock page ---------- */
.sh{margin:0;border-top:1px solid var(--ink)}
.wrap{overflow-x:auto;overflow-y:auto;-webkit-overflow-scrolling:touch}
.wrap--tall{max-height:min(74vh,840px)}
table.reg{border-collapse:collapse;width:100%;font-family:var(--body);font-size:15.5px;font-variation-settings:'opsz' 10}
table.reg caption{
  text-align:left;font-family:var(--mono);font-size:10.5px;font-weight:400;
  text-transform:uppercase;letter-spacing:.11em;color:var(--ink-2);line-height:1.7;
  padding:12px 0 14px;max-width:96ch;
}
table.reg thead th{
  position:sticky;top:0;z-index:3;background:var(--paper);color:var(--ink);
  font-family:var(--mono);font-weight:500;font-size:10.5px;text-transform:uppercase;letter-spacing:.1em;
  text-align:left;vertical-align:bottom;padding:0 14px 8px 0;
  border-top:1px solid var(--ink);border-bottom:1px solid var(--accent);white-space:nowrap;
}
table.reg thead th .u{display:block;font-size:9.5px;font-weight:400;color:var(--support);letter-spacing:.09em;margin-top:3px}
table.reg thead th[data-sort]{cursor:pointer}
table.reg thead th[data-sort] .th__l::after{content:' \2195';color:var(--ink-3)}
table.reg thead th[aria-sort] .th__l::after{content:' \2193';color:var(--accent)}
table.reg thead th[aria-sort="ascending"] .th__l::after{content:' \2191';color:var(--accent)}
table.reg td{padding:11px 14px 11px 0;border-bottom:1px solid var(--hair);vertical-align:top}
table.reg tbody tr:hover td{background:transparent;border-bottom-color:var(--support)}
.c-num{text-align:right;font-family:var(--mono);font-weight:400;font-size:14px;white-space:nowrap;font-variant-numeric:tabular-nums}
.c-mono{font-family:var(--mono);font-size:12.5px;letter-spacing:0;color:var(--ink-2)}
.c-gut{font-family:var(--mono);font-size:11px;color:var(--ink-3);text-align:right;width:46px;white-space:nowrap;padding-right:16px}
.c-split{padding-left:16px;border-left:1px solid var(--hair)}
.c-wide{min-width:240px;white-space:normal}
.c-name{font-weight:600;white-space:nowrap}
tr.band td,tr.band th{
  border-top:1px solid var(--ink);border-bottom:2px solid var(--ink);background:var(--paper);
  font-family:var(--mono);font-weight:500;font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;
  padding-top:12px;padding-bottom:12px;
}
tr.band td.c-num{font-size:12.5px}
tr[hidden]{display:none}

.fb{padding:14px 0 0;border-top:1px solid var(--hair-2);margin-top:2px}
.fb p{margin:0 0 6px;max-width:92ch;font-size:13.5px;line-height:1.6;color:var(--ink-2)}
.fb b{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:var(--support);margin-right:4px}
.fb .notes{margin:10px 0 0;padding-left:18px;max-width:92ch}
.fb .notes li{font-size:13.5px;line-height:1.6;color:var(--ink-2);margin-bottom:5px}
.fb .notes li::marker{color:var(--support)}

/* controls */
.ctl{display:flex;flex-wrap:wrap;gap:14px 24px;align-items:flex-end;margin:0 0 18px;padding:0 0 16px;border-bottom:1px solid var(--hair)}
.ctl label{display:flex;flex-direction:column;gap:6px;font-family:var(--mono);font-size:10px;font-weight:400;text-transform:uppercase;letter-spacing:.13em;color:var(--support)}
.ctl select,.ctl input{
  font-family:var(--mono);font-size:13.5px;color:var(--ink);background:var(--paper);
  border:0;border-bottom:1px solid var(--ink);padding:6px 2px;min-width:190px;border-radius:0;
}
.ctl select:focus,.ctl input:focus{border-bottom-color:var(--accent);outline:none}
.ctl .count{font-family:var(--mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-2);margin-left:auto;padding-bottom:8px}
.pager{display:flex;gap:14px;align-items:center;padding:14px 0 0;font-family:var(--mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-2)}
.pager button{font-family:var(--mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.1em;background:transparent;color:var(--ink);border:1px solid var(--ink);padding:7px 14px;cursor:pointer;border-radius:0}
.pager button:hover:not([disabled]){border-color:var(--accent);color:var(--accent)}
.pager button[disabled]{opacity:.35;cursor:default}

/* ---------- charts and the area plate ---------- */
.chart,.plate{display:block;width:100%;height:auto;background:transparent}
.chart .ln{fill:none;stroke-width:1.4}
.chart .ln.s1{stroke:var(--accent)}
.chart .ln.s2{stroke:var(--support)}
.chart .zero{stroke:var(--support);stroke-width:1}
.chart .ax{font-family:var(--mono);font-size:10px;fill:var(--ink-3);text-anchor:end}
.chart .ax--y{text-anchor:start;letter-spacing:.12em;text-transform:uppercase;fill:var(--support)}
.chart .lnlab{font-family:var(--mono);font-size:10px;text-anchor:end;letter-spacing:.08em}
.chart .lnlab.s1{fill:var(--accent)}
.chart .lnlab.s2{fill:var(--support)}
.plate rect{fill:none;stroke:var(--ink);stroke-width:1}
.plate .pl--act rect{stroke:var(--accent);stroke-width:1.6}
.plate .plname{font-family:var(--mono);font-size:10.5px;font-weight:500;fill:var(--ink)}
.plate .pl--act .plname{fill:var(--accent)}
.plate .plval{font-family:var(--mono);font-size:9.5px;fill:var(--ink-3)}
.fig{margin:0 0 6px;border-top:1px solid var(--ink);padding-top:18px}
.figcap{font-family:var(--mono);font-size:11px;text-transform:none;letter-spacing:.02em;color:var(--ink-2);line-height:1.7;padding:14px 0 0;border-top:1px solid var(--hair);margin-top:14px;max-width:92ch}
.js .chart .ln{stroke-dasharray:1;stroke-dashoffset:1}
.js .chart.drawn .ln{stroke-dashoffset:0;transition:stroke-dashoffset 620ms cubic-bezier(.16,1,.3,1)}

/* ---------- the three ladders ---------- */
.lad{border-top:2px solid var(--accent);margin:0 0 34px}
.lad__row{display:grid;grid-template-columns:minmax(0,1fr);gap:0;border-bottom:1px solid var(--hair);padding:22px 0}
@media(min-width:900px){.lad__row{grid-template-columns:210px minmax(0,1fr) 280px;gap:32px;align-items:start}}
.lad__no{font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.13em;color:var(--accent);text-transform:uppercase}
.lad__t{font-family:var(--body);font-variation-settings:'opsz' 20;font-size:19px;font-weight:700;color:var(--ink);display:block;margin-top:8px;line-height:1.3}
.lad__v{font-family:var(--mono);font-size:13.5px;color:var(--ink-2);line-height:1.7}
.lad__v .big{font-family:var(--disp);font-variation-settings:'opsz' 96;font-size:34px;display:block;line-height:1.1;color:var(--ink);margin-bottom:6px}
.lad__gap{border-top:1px solid var(--hair);padding-top:12px;font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-2);line-height:1.9}
.tri{width:9px;height:9px;vertical-align:baseline;display:inline-block}
.tri--up{fill:var(--accent)}
.tri--flat{fill:var(--support)}

/* ---------- misc blocks ---------- */
.warn{border-top:2px solid var(--accent);border-bottom:1px solid var(--hair-2);padding:18px 0 20px;margin:0 0 40px}
.warn p{margin:0;max-width:74ch;font-size:16.5px}
.warn .h{font-family:var(--mono);font-size:10.5px;font-weight:500;text-transform:uppercase;letter-spacing:.14em;color:var(--accent);display:block;margin-bottom:10px}
.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:0 48px}
.grid2 p,.grid2 ul{max-width:48ch}
.dl{border-top:1px solid var(--ink);margin:0 0 32px}
.dl__row{display:grid;grid-template-columns:minmax(0,1fr);border-bottom:1px solid var(--hair);padding:16px 0}
@media(min-width:800px){.dl__row{grid-template-columns:250px minmax(0,1fr);gap:32px}}
.dl__k{font-family:var(--mono);font-size:10.5px;font-weight:400;text-transform:uppercase;letter-spacing:.12em;color:var(--support);line-height:1.8}
.dl__v{font-size:16.5px}
.dl__v p{margin-bottom:10px}
.dl__v p:last-child{margin-bottom:0}
.vgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:0;border-top:1px solid var(--ink)}
.vg{padding:18px 24px 20px 0;border-bottom:1px solid var(--hair)}
.vg a{font-family:var(--disp);font-variation-settings:'opsz' 96;font-size:26px;text-decoration:none;line-height:1.1;display:block}
.vg a:hover{color:var(--accent)}
.vg span{display:block;font-family:var(--mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-2);margin-top:10px;line-height:1.8}
.dlist{border-top:1px solid var(--ink)}
.dlist a{display:flex;flex-wrap:wrap;gap:6px 24px;align-items:baseline;padding:18px 0;border-bottom:1px solid var(--hair);text-decoration:none}
.dlist a:hover .n{text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px}
.dlist .n{font-weight:700;font-size:18px}
.dlist .m{font-family:var(--mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-2)}

/* ---------- footer ---------- */
.foot{padding:0 var(--gut) 60px;margin-top:24px}
.foot__in{max-width:var(--col);margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr);gap:32px}
@media(min-width:940px){.foot__in{grid-template-columns:minmax(0,1.7fr) minmax(0,.7fr) auto}}
.foot p{font-size:14.5px;line-height:1.65;color:var(--ink-2);max-width:58ch}
.foot__name{font-family:var(--disp);font-variation-settings:'opsz' 96;font-size:24px;text-transform:uppercase;letter-spacing:.03em;color:var(--ink);margin-bottom:12px}
.foot__h{font-family:var(--mono);font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.13em;color:var(--support);margin-bottom:10px}
.foot__col--nav a{display:block;font-family:var(--mono);font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-2);text-decoration:none;padding:4px 0}
.foot__col--nav a:hover{color:var(--accent)}
.foot__last{max-width:var(--col);margin:32px auto 0;padding-top:16px;border-top:1px solid var(--hair);font-family:var(--mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-3);line-height:1.9}

/* ---------- mobile is its own layout, not a scaled desktop ---------- */
@media(max-width:800px){
  :root{--gut:1.15rem}
  body{font-size:17px}
  .mast__in{min-height:0;padding:22px 0 12px;align-items:flex-start;flex-direction:column;gap:16px}
  .mark{font-size:30px}
  .strip{gap:0 20px;font-size:10px;padding-bottom:0}
  .nav__in{gap:0 18px}
  .nav a{font-size:10.5px}
  .shell{padding:30px var(--gut) 52px}
  h1{font-size:34px;max-width:none}
  h2{font-size:26px;max-width:none}
  .ans{font-size:18.5px;padding-left:14px}
  .sec{margin-bottom:48px}
  .sec__head{flex-direction:column;gap:16px}
  .kfs{grid-template-columns:minmax(0,1fr)}
  .kf,.kf+.kf{padding:16px 0 18px;border-left:0;padding-left:0}
  .kf__v{font-size:36px}
  .kf__m{max-width:none}
  table.reg{font-size:15px}
  table.reg td{padding:12px 14px 12px 0}
  table.reg tbody td.c-gut,table.reg thead th.c-gut{position:sticky;left:0;z-index:2;background:var(--paper);width:38px;padding-right:10px}
  table.reg tbody td.c-name,table.reg thead th.c-name{position:sticky;left:38px;z-index:2;background:var(--paper);padding-right:16px}
  table.reg thead th.c-gut,table.reg thead th.c-name{z-index:4}
  .c-wide{min-width:200px}
  .ctl{gap:14px}
  .ctl select,.ctl input{min-width:0;width:100%}
  .ctl label{width:100%}
  .ctl .count{margin-left:0}
  .vgrid{grid-template-columns:minmax(0,1fr)}
  .lad__row{padding:18px 0}
  .foot__last{font-size:10px}
}

@media(prefers-reduced-motion:reduce){
  .js .imp{opacity:1}
  .js .imp.struck{transition:none}
  .js .chart .ln{stroke-dasharray:none;stroke-dashoffset:0}
  .js .chart.drawn .ln{transition:none}
  *{scroll-behavior:auto!important}
}

@media print{
  .nav,.bar,.skip,.ctl,.pager{display:none}
  body{background:#FBF8F4;font-size:10pt}
  .wrap--tall{max-height:none}
  .sec--bleed{margin-left:0}
}
