/* house.css — the Shophouse Finder house style, version 3 (4 Oct 2026). One file, one set of colours, three dialects.
   Colour: Lime Plaster, Shutter Green and Rust; Deep Shutter is the one dark ground, with Copper for the one large word on it.
   Desk (tools she operates): data-theme="desk" | "desk-dark" (the default; follows the OS when no data-theme is set).
   Study (what clients see: site, reports, decks): data-theme="study" | "study-night". Same colours as the desks.
   Social (posts, reel covers, stories): .h-post on a study or study-night ground.
   Type: Instrument Serif speaks, Geist works, Geist Mono labels. Font files sit in fonts/, so a desk works with no internet.
   Every class starts with h- so it can sit beside an app's own CSS without collisions.
   Version 2 (navy and brass) is kept in archive/v2-2026-10-04-navy/, version 1 in archive/v1-2026-09-26/. */
/* ---- Colour: one palette, light and night. desk = study, desk-dark = study-night. ---- */
:root, [data-theme="desk"] {
  --ground: #eeede8;
  --surface: #f7f6f2;
  --surface-quiet: #e3e6df;
  --ink: #1b211f;
  --muted: #48504c;
  --line-strong: rgba(27, 33, 31, 0.26);
  --line: rgba(27, 33, 31, 0.13);
  --line-soft: #e3e6df;
  --line-accent: rgba(36, 69, 59, 0.4);
  --control-edge: #737c77;
  --accent: #24453b;
  --accent-deep: #142822;
  --on-accent: #f7f6f2;
  --tint-accent: #e3e6df;
  --rust: #8a3a17;
  --rust-text: #8a3a17;
  --rust-wash: #efe0d6;
  --good: #2d6a48;
  --warn: #765a0c;
  --bad: #a12a30;
  --tint-good: #dfeae1;
  --tint-warn: #f3ead0;
  --tint-bad: #f3dfdc;
  --tint-neutral: #e3e6df;
  --rail: #142822;
  --on-rail: #f7f6f2;
  --on-rail-muted: #c9d3cc;
  --rail-active: #24453b;
  --rail-rust: #b4501e;
  color-scheme: light;
}
[data-theme="desk-dark"] {
  --ground: #142822;
  --surface: #10201a;
  --surface-quiet: #24453b;
  --ink: #f7f6f2;
  --muted: #c9d3cc;
  --line-strong: rgba(255, 255, 255, 0.26);
  --line: rgba(255, 255, 255, 0.14);
  --line-soft: rgba(255, 255, 255, 0.08);
  --line-accent: rgba(247, 246, 242, 0.3);
  --control-edge: #8ea197;
  --accent: #f7f6f2;
  --accent-deep: #ffffff;
  --on-accent: #142822;
  --tint-accent: #24453b;
  --rust: #b4501e;
  --rust-text: #f7f6f2;
  --rust-wash: #3a2a1f;
  --good: #8fc4a4;
  --warn: #e2b84e;
  --bad: #f09494;
  --tint-good: #1b3a2a;
  --tint-warn: #33301c;
  --tint-bad: #3a2224;
  --tint-neutral: #24453b;
  --rail: #0e1c17;
  --on-rail: #f7f6f2;
  --on-rail-muted: #c9d3cc;
  --rail-active: #1c372e;
  --rail-rust: #b4501e;
  color-scheme: dark;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme]) {
  --ground: #142822;
  --surface: #10201a;
  --surface-quiet: #24453b;
  --ink: #f7f6f2;
  --muted: #c9d3cc;
  --line-strong: rgba(255, 255, 255, 0.26);
  --line: rgba(255, 255, 255, 0.14);
  --line-soft: rgba(255, 255, 255, 0.08);
  --line-accent: rgba(247, 246, 242, 0.3);
  --control-edge: #8ea197;
  --accent: #f7f6f2;
  --accent-deep: #ffffff;
  --on-accent: #142822;
  --tint-accent: #24453b;
  --rust: #b4501e;
  --rust-text: #f7f6f2;
  --rust-wash: #3a2a1f;
  --good: #8fc4a4;
  --warn: #e2b84e;
  --bad: #f09494;
  --tint-good: #1b3a2a;
  --tint-warn: #33301c;
  --tint-bad: #3a2224;
  --tint-neutral: #24453b;
  --rail: #0e1c17;
  --on-rail: #f7f6f2;
  --on-rail-muted: #c9d3cc;
  --rail-active: #1c372e;
  --rail-rust: #b4501e;
    color-scheme: dark;
  }
}
[data-theme="study"] {
  --ground: #eeede8;
  --surface: #f7f6f2;
  --surface-quiet: #e3e6df;
  --ink: #1b211f;
  --muted: #48504c;
  --line-strong: rgba(27, 33, 31, 0.26);
  --line: rgba(27, 33, 31, 0.13);
  --line-soft: #e3e6df;
  --line-accent: rgba(36, 69, 59, 0.4);
  --control-edge: #737c77;
  --accent: #24453b;
  --accent-deep: #142822;
  --on-accent: #f7f6f2;
  --tint-accent: #e3e6df;
  --rust: #8a3a17;
  --rust-text: #8a3a17;
  --rust-wash: #efe0d6;
  --good: #2d6a48;
  --warn: #765a0c;
  --bad: #a12a30;
  --tint-good: #dfeae1;
  --tint-warn: #f3ead0;
  --tint-bad: #f3dfdc;
  --tint-neutral: #e3e6df;
  --rail: #142822;
  --on-rail: #f7f6f2;
  --on-rail-muted: #c9d3cc;
  --rail-active: #24453b;
  --rail-rust: #b4501e;
  color-scheme: light;
}
[data-theme="study-night"] {
  --ground: #142822;
  --surface: #10201a;
  --surface-quiet: #24453b;
  --ink: #f7f6f2;
  --muted: #c9d3cc;
  --line-strong: rgba(255, 255, 255, 0.26);
  --line: rgba(255, 255, 255, 0.14);
  --line-soft: rgba(255, 255, 255, 0.08);
  --line-accent: rgba(247, 246, 242, 0.3);
  --control-edge: #8ea197;
  --accent: #f7f6f2;
  --accent-deep: #ffffff;
  --on-accent: #142822;
  --tint-accent: #24453b;
  --rust: #b4501e;
  --rust-text: #f7f6f2;
  --rust-wash: #3a2a1f;
  --good: #8fc4a4;
  --warn: #e2b84e;
  --bad: #f09494;
  --tint-good: #1b3a2a;
  --tint-warn: #33301c;
  --tint-bad: #3a2224;
  --tint-neutral: #24453b;
  --rail: #0e1c17;
  --on-rail: #f7f6f2;
  --on-rail-muted: #c9d3cc;
  --rail-active: #1c372e;
  --rail-rust: #b4501e;
  color-scheme: dark;
}
/* ---- Non-colour tokens ------------------------------------------------ */
:root {
  /* Two faces do the work. Instrument Serif speaks (titles, headlines, big figures), regular weight only.
     Geist works (everything operated and read). Geist Mono labels. Anton is for social posters only. */
  --font-serif: 'Instrument Serif', 'Iowan Old Style', Georgia, serif;
  --font-sans: 'Geist', system-ui, -apple-system, 'Segoe UI', 'Helvetica Neue', Arial, sans-serif;
  --font-mono: 'Geist Mono', ui-monospace, 'SF Mono', Menlo, Consolas, monospace;
  --font-poster: 'Anton', Impact, 'Arial Narrow', sans-serif;
  /* Version 1 names, kept so older screens keep working. */
  --font-display: var(--font-serif);
  --font-text: var(--font-sans);
  --space-1: 4px; --space-2: 8px; --space-3: 12px; --space-4: 16px; --space-5: 20px;
  --space-6: 24px; --space-7: 28px; --space-8: 36px; --space-9: 48px; --space-10: 72px;
  --radius-none: 0px; --radius-xs: 3px; --radius-sm: 5px; --radius-md: 6px; --radius-lg: 8px; --radius-arch: 999px; --radius-dot: 50%;
  --measure-read: 68ch; --width-desk: 1240px; --width-study: 1080px; --rail-width: 232px;
  --ease: cubic-bezier(0.23, 1, 0.32, 1);
  --face-title: var(--font-serif);
  --face-ui: var(--font-sans);
  --face-label: var(--font-mono);
  --shadow-float: 0 8px 28px rgba(20, 40, 34, 0.16);
}
[data-theme="desk-dark"], [data-theme="study-night"] { --shadow-float: 0 8px 28px rgba(0, 0, 0, 0.45); }

@font-face { font-family: 'Instrument Serif'; src: url('fonts/InstrumentSerif.woff2') format('woff2'); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: 'Instrument Serif'; src: url('fonts/InstrumentSerif-Italic.woff2') format('woff2'); font-weight: 400; font-style: italic; font-display: swap; }
@font-face { font-family: 'Geist'; src: url('fonts/Geist.woff2') format('woff2'); font-weight: 100 900; font-style: normal; font-display: swap; }
@font-face { font-family: 'Geist Mono'; src: url('fonts/GeistMono.woff2') format('woff2'); font-weight: 100 900; font-style: normal; font-display: swap; }
@font-face { font-family: 'Anton'; src: url('fonts/Anton.woff2') format('woff2'); font-weight: 400; font-style: normal; font-display: swap; }

/* ---- Base ------------------------------------------------------------- */
.h-page { font-family: var(--face-ui); font-size: 15px; line-height: 1.5; color: var(--ink); background: var(--ground); -webkit-font-smoothing: antialiased; }
[data-theme^="study"] .h-page, .h-page[data-theme^="study"] { font-size: 16.5px; line-height: 1.65; }
.h-page :focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
.h-num { font-variant-numeric: tabular-nums; }
.h-muted { color: var(--muted); }
@media (prefers-reduced-motion: reduce) { .h-page * { transition: none !important; animation: none !important; } }

/* ---- View head: a mono label, a serif title with one italic word, one line under -- */
.h-eyebrow { display: block; font-family: var(--face-label); font-size: 11px; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; color: var(--muted); line-height: 1.5; margin: 0; }
.h-eyebrow.is-rust, .h-eyebrow.is-gold { color: var(--rust-text); }
.h-view-head { display: flex; justify-content: space-between; align-items: flex-end; gap: var(--space-6); flex-wrap: wrap; padding-top: var(--space-8); margin-bottom: var(--space-7); }
.h-view-head > div { max-width: 78ch; }
.h-title { font-family: var(--face-title); font-weight: 400; font-size: 44px; line-height: 1.02; letter-spacing: -.012em; margin: 8px 0 0; text-wrap: balance; color: var(--ink); }
[data-theme^="study"] .h-title { font-size: clamp(2.6rem, 5.2vw, 3.6rem); line-height: .98; }
.h-title em { font-style: italic; color: var(--rust); }
.h-lede { color: var(--ink); margin: 10px 0 0; max-width: 62ch; line-height: 1.55; }
.h-actions { display: flex; gap: var(--space-2) var(--space-4); flex-wrap: wrap; align-items: center; }
@media (max-width: 800px) { .h-view-head { padding-top: 22px; } .h-title { font-size: 36px; } }

/* ---- Buttons: small, dark, square-cornered; one filled button per row -- */
.h-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 34px; padding: 0 14px; border-radius: var(--radius-sm); font: 600 13px/1 var(--face-ui); cursor: pointer; text-decoration: none; border: 1px solid var(--control-edge); background: var(--surface); color: var(--ink); transition: background .15s, border-color .15s; }
.h-btn:hover:not(:disabled) { background: var(--tint-neutral); }
.h-btn.is-primary { background: var(--accent-deep); border-color: var(--accent-deep); color: var(--on-accent); }
.h-btn.is-primary:hover:not(:disabled) { background: var(--accent); border-color: var(--accent); }
.h-btn.is-quiet, .h-btn.is-text { border-color: transparent; background: transparent; color: var(--ink); padding-inline: 2px; font-weight: 500; text-decoration: underline; text-decoration-color: var(--control-edge); text-underline-offset: 3px; }
.h-btn.is-quiet { color: var(--muted); }
.h-btn.is-quiet:hover:not(:disabled), .h-btn.is-text:hover:not(:disabled) { background: transparent; text-decoration-color: currentColor; color: var(--ink); }
.h-btn.is-small { min-height: 28px; padding: 0 10px; font-size: 12px; }
.h-btn:disabled { cursor: not-allowed; opacity: .55; }
@media (pointer: coarse) { .h-btn { min-height: 44px; } }

/* ---- Counts: plain filters in a row, no boxes -------------------------- */
.h-tiles { display: flex; flex-wrap: wrap; gap: 0 var(--space-8); border-top: 1.5px solid var(--ink); border-bottom: 1px solid var(--line-strong); }
.h-tile { display: flex; flex-direction: column; gap: 2px; padding: 12px 0 13px; min-width: 132px; background: none; border: 0; border-bottom: 2px solid transparent; margin-bottom: -1px; text-align: left; color: var(--ink); font: inherit; }
button.h-tile { cursor: pointer; }
button.h-tile:hover .h-tile-label { text-decoration: underline; text-underline-offset: 3px; }
.h-tile[aria-pressed="true"] { border-bottom-color: var(--accent); }
.h-tile-label { font-size: 13px; font-weight: 600; }
.h-tile-num { font-family: var(--face-title); font-size: 38px; line-height: 1; letter-spacing: -.012em; font-variant-numeric: lining-nums tabular-nums; }
.h-tile-sub { font-size: 12px; color: var(--muted); line-height: 1.4; }
.h-tile.is-waiting .h-tile-num { color: var(--rust-text); }

/* ---- Rows: a name, what it says, why, one action. Rules, not boxes. ---- */
.h-cards { display: flex; flex-direction: column; border-top: 1.5px solid var(--ink); }
.h-card { padding: 16px 0 18px; border-bottom: 1px solid var(--line-strong); }
.h-card-head { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; }
.h-card-name { font-family: var(--face-ui); font-weight: 600; font-size: 17px; line-height: 1.25; letter-spacing: -.015em; margin: 0; overflow-wrap: anywhere; }
.h-card .h-eyebrow + .h-card-name { margin-top: 4px; }
.h-card-why { font: 500 13px/1.2 var(--face-ui); color: var(--rust-text); white-space: nowrap; font-variant-numeric: tabular-nums; }
.h-card-says { font-size: 15px; line-height: 1.5; margin: 5px 0 0; max-width: 74ch; }
.h-card-because { font-size: 13px; line-height: 1.5; color: var(--muted); margin: 5px 0 0; max-width: 74ch; }
.h-card-meta { display: flex; gap: 6px 18px; flex-wrap: wrap; margin-top: 6px; font-size: 13px; color: var(--muted); font-variant-numeric: tabular-nums; }
.h-card-meta b { color: var(--ink); font-weight: 600; }
.h-card-actions { display: flex; gap: var(--space-2) var(--space-4); flex-wrap: wrap; align-items: center; margin-top: var(--space-3); }
.h-quote { margin: 10px 0 0; padding: 10px 14px; background: var(--tint-neutral); border-radius: var(--radius-md); font-size: 14px; white-space: pre-wrap; overflow-wrap: anywhere; }
.h-quote cite { display: block; margin-top: 6px; font-size: 12px; font-style: normal; color: var(--muted); }

/* ---- State words and status lights: a plain coloured word, never a pill -- */
.h-chip { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 600; color: var(--muted); white-space: nowrap; }
.h-chip.is-good { color: var(--good); }
.h-chip.is-warn { color: var(--warn); }
.h-chip.is-bad { color: var(--bad); }
.h-chip.is-waiting { color: var(--rust-text); }
.h-chip.is-accent { color: var(--accent); }
.h-light { width: 8px; height: 8px; border-radius: var(--radius-dot); background: var(--muted); display: inline-block; flex: none; }
.h-light.is-good { background: var(--good); } .h-light.is-waiting { background: var(--rust); } .h-light.is-bad { background: var(--bad); }

/* ---- Tables: names in semibold, numbers tabular, rules not a box ------- */
.h-table-wrap { overflow-x: auto; border-top: 1.5px solid var(--ink); }
.h-table { width: 100%; border-collapse: collapse; font-size: 14px; }
.h-table th { text-align: left; font-family: var(--face-label); font-size: 11px; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; color: var(--muted); padding: 10px 16px 10px 0; border-bottom: 1px solid var(--line-strong); white-space: nowrap; }
.h-table td { padding: 12px 16px 12px 0; border-bottom: 1px solid var(--line-strong); vertical-align: top; }
.h-table th:last-child, .h-table td:last-child { padding-right: 0; }
.h-table tbody tr:hover td { background: var(--tint-neutral); }
.h-table .is-name { font-weight: 600; font-size: 15px; letter-spacing: -.01em; }
.h-table .is-num { text-align: right; font-variant-numeric: tabular-nums; }
.h-table small { display: block; margin-top: 2px; font-size: 12px; color: var(--muted); }

/* ---- Fields ----------------------------------------------------------- */
.h-field { display: grid; gap: 6px; min-width: 0; }
.h-field > label, .h-field > .h-label { font-size: 13px; font-weight: 600; color: var(--ink); }
.h-input { width: 100%; background: var(--surface); border: 1px solid var(--control-edge); border-radius: var(--radius-sm); padding: 8px 10px; min-height: 38px; font: 15px/1.4 var(--face-ui); color: var(--ink); }
textarea.h-input { line-height: 1.6; resize: vertical; }
.h-input:focus { outline: 2px solid var(--accent); outline-offset: 0; border-color: var(--accent); }
.h-hint { font-size: 12px; color: var(--muted); }
.h-field.is-invalid .h-input { border-color: var(--bad); }
.h-field.is-invalid .h-hint { color: var(--bad); }

/* ---- Tabs and the segmented choice ----------------------------------- */
.h-tabs { display: flex; flex-wrap: wrap; gap: 0 28px; border-bottom: 1px solid var(--line-strong); }
.h-tabs button { background: none; border: 0; border-bottom: 2px solid transparent; margin-bottom: -1px; padding: 9px 0 10px; font: 500 14px var(--face-ui); color: var(--muted); cursor: pointer; }
.h-tabs button:hover { color: var(--ink); }
.h-tabs button[aria-selected="true"] { color: var(--ink); font-weight: 600; border-bottom-color: var(--ink); }
.h-segmented { display: inline-flex; gap: 2px; background: var(--tint-neutral); padding: 3px; border-radius: var(--radius-lg); }
.h-segmented button { border: 0; background: none; border-radius: var(--radius-sm); padding: 6px 12px; font: 500 13px var(--face-ui); color: var(--muted); cursor: pointer; }
.h-segmented button[aria-pressed="true"] { background: var(--surface); color: var(--ink); font-weight: 600; box-shadow: 0 0 0 1px var(--line-strong); }

/* ---- Notices, empty and error states ---------------------------------- */
.h-notice { display: flex; gap: 12px; align-items: flex-start; padding: 12px 16px; border-radius: var(--radius-md); background: var(--tint-neutral); color: var(--ink); font-size: 14px; line-height: 1.5; }
.h-notice.is-waiting { background: var(--rust-wash); }
.h-notice.is-good { background: var(--tint-good); }
.h-notice.is-bad { background: var(--tint-bad); }
.h-notice b { font-weight: 600; }
.h-empty { padding: 20px 0; border-top: 1.5px solid var(--ink); border-bottom: 1px solid var(--line-strong); color: var(--muted); font-size: 14px; }
.h-empty b { display: block; color: var(--ink); font-weight: 600; margin-bottom: 4px; }

/* ---- The rail: the one dark anchor on a desk -------------------------- */
.h-rail { display: flex; flex-direction: column; gap: 22px; background: var(--rail); color: var(--on-rail); padding: 24px 12px 16px; width: var(--rail-width); }
.h-rail .h-eyebrow { color: var(--on-rail-muted); }
.h-brand { display: flex; flex-direction: column; gap: 6px; padding: 0 10px; }
.h-brand-name { font: 600 16px/1.2 var(--face-ui); letter-spacing: -.015em; color: var(--on-rail); }
.h-nav { display: flex; flex-direction: column; gap: 2px; }
.h-nav a { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 9px 10px; border-radius: var(--radius-md); color: var(--on-rail-muted); text-decoration: none; font-size: 14px; font-weight: 500; }
.h-nav a:hover { color: var(--on-rail); }
.h-nav a[aria-current="page"] { background: var(--rail-active); color: var(--on-rail); font-weight: 600; }
.h-nav-count { font-size: 13px; font-weight: 600; color: var(--on-rail); font-variant-numeric: tabular-nums; }

/* ---- Toast ------------------------------------------------------------ */
.h-toast { max-width: 420px; padding: 12px 16px; border-radius: var(--radius-lg); background: var(--ink); color: var(--ground); font-size: 14px; box-shadow: var(--shadow-float); }

/* ---- Study: the folio label, the ruled plate, the figure, the hero, the band, the arch -- */
.h-folio { display: flex; justify-content: space-between; align-items: baseline; gap: 1rem; font: 500 11px/1.4 var(--face-label); letter-spacing: .08em; text-transform: uppercase; color: var(--ink); }
.h-plate { position: relative; border-top: 1.5px solid var(--ink); border-bottom: 1px solid var(--line-strong); border-radius: var(--radius-none); padding: var(--space-5) 0 var(--space-7); }
.h-figure { display: flex; flex-direction: column; gap: 4px; }
.h-figure-n { font-family: var(--face-title); font-weight: 400; font-size: clamp(2.4rem, 4vw, 3rem); line-height: 1; letter-spacing: -.012em; font-variant-numeric: lining-nums; color: var(--ink); }
.h-figure-label { font-size: 13px; color: var(--muted); max-width: 24ch; }
.h-rule { border: 0; border-top: 1px solid var(--line-strong); margin: var(--space-7) 0; }
.h-hero { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: var(--space-8); align-items: end; }
.h-hero > div { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); }
.h-hero .h-title { margin: 0; }
.h-hero .h-lede { margin: 0; max-width: 36ch; }
@media (max-width: 640px) { .h-hero { grid-template-columns: minmax(0, 1fr); } }
.h-arch { display: block; width: 100%; aspect-ratio: 4 / 5; object-fit: cover; border-radius: var(--radius-arch) var(--radius-arch) 0 0; background: var(--surface-quiet); }
.h-band { display: flex; flex-wrap: wrap; gap: var(--space-6) var(--space-9); padding: var(--space-7) var(--space-8); background: var(--rail); color: var(--on-rail); }
.h-band .h-figure-n { color: var(--on-rail); }
.h-band .h-figure-label { color: var(--on-rail-muted); }
.h-lockup { display: block; height: 44px; width: auto; }
.h-signoff { font: 500 11px/1.5 var(--face-label); letter-spacing: .04em; color: var(--muted); }
.h-signoff b { font-weight: 600; color: var(--ink); }

/* ---- The logo: the stacked wordmark, drawn as a vector (build/logo.py) and carried inside this file so it can never
   fail to load. <span class="h-logo" role="img" aria-label="Shophouse Finder"></span>. One colour: Shutter Green on
   plaster, Plaster Light on dark green. Set its size with height; the width follows. */
.h-logo { display: block; flex: none; height: 44px; aspect-ratio: 3704.6 / 1590.0; background-color: var(--logo);
  --logo-art: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzNzA0LjYgMTU5MCIgd2lkdGg9IjM3MC41IiBoZWlnaHQ9IjE1OSIgcm9sZT0iaW1nIiBhcmlhLWxhYmVsPSJTaG9waG91c2UgRmluZGVyIj48dGl0bGU+U2hvcGhvdXNlIEZpbmRlcjwvdGl0bGU+PHBhdGggZmlsbD0iIzAwMCIgZD0iTTEwOS42IDc0OUM5NC4yIDc0OSA3Ny45IDc0Ny4yIDYwLjYgNzQzLjVDNDMuMiA3MzkuOCAyOS4yIDczNS4zIDE4LjYgNzMwQzEyLjYgNzI2LjcgOS42IDcyMSA5LjYgNzEzTDYuNiA2MDFDNi42IDU4OS43IDEwLjkgNTg0IDE5LjYgNTg0QzI2LjkgNTg0IDMxLjkgNTg5LjMgMzQuNiA2MDBDNDUuOSA2NDcuMyA1OS43IDY3OS43IDc2LjEgNjk3QzkyLjQgNzE0LjMgMTEyLjIgNzIzIDEzNS42IDcyM0MxNTQuOSA3MjMgMTcwLjkgNzE1LjUgMTgzLjYgNzAwLjVDMTk2LjIgNjg1LjUgMjAyLjYgNjY0LjcgMjAyLjYgNjM4QzIwMi42IDYxMS4zIDE5NS4yIDU4Ny43IDE4MC42IDU2N0MxNjUuOSA1NDYuMyAxNDEuMiA1MjMuNyAxMDYuNiA0OTlDNzEuOSA0NzUuNyA0Ni42IDQ1Mi4yIDMwLjYgNDI4LjVDMTQuNiA0MDQuOCA2LjYgMzc5IDYuNiAzNTFDNi42IDMxMyAxOS45IDI4Mi4zIDQ2LjYgMjU5QzczLjIgMjM1LjcgMTA4LjYgMjI0IDE1Mi42IDIyNEMxNjUuOSAyMjQgMTc4LjkgMjI1LjUgMTkxLjYgMjI4LjVDMjA0LjIgMjMxLjUgMjE1LjYgMjM2LjMgMjI1LjYgMjQzQzIzMS42IDI0NyAyMzQuNiAyNTIuMyAyMzQuNiAyNTlMMjM2LjYgMzY5QzIzNi42IDM3OSAyMzIuNiAzODQgMjI0LjYgMzg0QzIxOS45IDM4NCAyMTYuNiAzODIuNSAyMTQuNiAzNzkuNUMyMTIuNiAzNzYuNSAyMTAuOSAzNzIuNyAyMDkuNiAzNjhDMTk2LjIgMzI0LjcgMTgyLjkgMjk0LjUgMTY5LjYgMjc3LjVDMTU2LjIgMjYwLjUgMTM5LjkgMjUyIDEyMC42IDI1MkMxMDMuMiAyNTIgODguOSAyNTggNzcuNiAyNzBDNjYuMiAyODIgNjAuNiAyOTcgNjAuNiAzMTVDNjAuNiAzMzguMyA2Ny42IDM1OC43IDgxLjYgMzc2Qzk1LjYgMzkzLjMgMTIwLjkgNDE0LjcgMTU3LjYgNDQwQzE5MC45IDQ2NCAyMTYuMSA0ODkuOCAyMzMuMSA1MTcuNUMyNTAuMSA1NDUuMiAyNTguNiA1NzUuMyAyNTguNiA2MDhDMjU4LjYgNjUwLjcgMjQ0LjkgNjg0LjggMjE3LjYgNzEwLjVDMTkwLjIgNzM2LjIgMTU0LjIgNzQ5IDEwOS42IDc0OVpNMzAxLjYgNzQwQzI5My42IDc0MCAyODkuNiA3MzYuMyAyODkuNiA3MjlDMjg5LjYgNzIyLjMgMjkzLjIgNzE4LjMgMzAwLjYgNzE3TDMxNC42IDcxNUMzMjguNiA3MTMgMzM3LjcgNzA5IDM0Mi4xIDcwM0MzNDYuNCA2OTcgMzQ4LjYgNjg3IDM0OC42IDY3M0wzNDguNiAxMDBDMzQ4LjYgODggMzQ2LjcgNzkuOCAzNDMuMSA3NS41QzMzOS40IDcxLjIgMzMyLjkgNjguMyAzMjMuNiA2N0wzMDIuNiA2NEMyOTUuMiA2Mi43IDI5MS42IDU4LjcgMjkxLjYgNTJDMjkxLjYgNDUuMyAyOTUuMiA0MS4zIDMwMi42IDQwQzMyMS4yIDM2IDMzNi45IDMxLjMgMzQ5LjYgMjZDMzYyLjIgMjAuNyAzNzIuOSAxNS4zIDM4MS42IDEwQzM5Mi4yIDMuMyA0MDAuMiAwIDQwNS42IDBDNDEyLjkgMCA0MTYuNiA1LjMgNDE2LjYgMTZMNDE2LjYgMjgxQzQxNi42IDI4NyA0MTguNiAyOTAuNSA0MjIuNiAyOTEuNUM0MjYuNiAyOTIuNSA0MzEuNiAyOTAuMyA0MzcuNiAyODVDNDYyLjkgMjYxLjcgNDg1LjIgMjQ1LjcgNTA0LjYgMjM3QzUyMy45IDIyOC4zIDU0NC4yIDIyNCA1NjUuNiAyMjRDNTk2LjkgMjI0IDYyMS42IDIzNC41IDYzOS42IDI1NS41QzY1Ny42IDI3Ni41IDY2Ni42IDMwNy4zIDY2Ni42IDM0OEw2NjYuNiA2NzNDNjY2LjYgNjg3IDY2OC43IDY5Ni44IDY3My4xIDcwMi41QzY3Ny40IDcwOC4yIDY4Ni42IDcxMiA3MDAuNiA3MTRMNzIyLjYgNzE3QzcyOS45IDcxOC4zIDczMy42IDcyMi4zIDczMy42IDcyOUM3MzMuNiA3MzYuMyA3MjkuNiA3NDAgNzIxLjYgNzQwTDU1My42IDc0MEM1NDQuMiA3NDAgNTM5LjYgNzM2LjMgNTM5LjYgNzI5QzUzOS42IDcyMi4zIDU0My4yIDcxOC4zIDU1MC42IDcxN0w1NjQuNiA3MTVDNTc4LjYgNzEzIDU4Ny43IDcwOSA1OTIuMSA3MDNDNTk2LjQgNjk3IDU5OC42IDY4NyA1OTguNiA2NzNMNTk4LjYgMzU5QzU5OC42IDMyNi4zIDU5Mi42IDMwMy4zIDU4MC42IDI5MEM1NjguNiAyNzYuNyA1NTEuNiAyNzAgNTI5LjYgMjcwQzUwOC4yIDI3MCA0ODkuMSAyNzYuMiA0NzIuMSAyODguNUM0NTUuMSAzMDAuOCA0NDEuNiAzMTcuMiA0MzEuNiAzMzcuNUM0MjEuNiAzNTcuOCA0MTYuNiAzODAuMyA0MTYuNiA0MDVMNDE2LjYgNjczQzQxNi42IDY4NyA0MTguNyA2OTcgNDIzLjEgNzAzQzQyNy40IDcwOSA0MzYuNiA3MTIuNyA0NTAuNiA3MTRMNDc3LjYgNzE3QzQ4NC45IDcxOC4zIDQ4OC42IDcyMi4zIDQ4OC42IDcyOUM0ODguNiA3MzYuMyA0ODQuNiA3NDAgNDc2LjYgNzQwWk05MzUuNiA3NDlDOTAxLjYgNzQ5IDg3MS4xIDczNy41IDg0NC4xIDcxNC41QzgxNy4xIDY5MS41IDc5NS42IDY2MCA3NzkuNiA2MjBDNzYzLjYgNTgwIDc1NS42IDUzNS4zIDc1NS42IDQ4NkM3NTUuNiA0MzYuNyA3NjMuNiAzOTIuMyA3NzkuNiAzNTNDNzk1LjYgMzEzLjcgODE3LjIgMjgyLjMgODQ0LjYgMjU5Qzg3MS45IDIzNS43IDkwMi4yIDIyNCA5MzUuNiAyMjRDOTY5LjYgMjI0IDEwMDAuMSAyMzUuNyAxMDI3LjEgMjU5QzEwNTQuMSAyODIuMyAxMDc1LjYgMzEzLjcgMTA5MS42IDM1M0MxMTA3LjYgMzkyLjMgMTExNS42IDQzNi43IDExMTUuNiA0ODZDMTExNS42IDUzNS4zIDExMDcuNyA1ODAgMTA5Mi4xIDYyMEMxMDc2LjQgNjYwIDEwNTQuOSA2OTEuNSAxMDI3LjYgNzE0LjVDMTAwMC4yIDczNy41IDk2OS42IDc0OSA5MzUuNiA3NDlaTTkzNS42IDcyNEMxMDA0LjkgNzI0IDEwMzkuNiA2NDQuNyAxMDM5LjYgNDg2QzEwMzkuNiAzMjggMTAwNC45IDI0OSA5MzUuNiAyNDlDODY2LjIgMjQ5IDgzMS42IDMyOCA4MzEuNiA0ODZDODMxLjYgNjQ0LjcgODY2LjIgNzI0IDkzNS42IDcyNFpNMTE1NS42IDk0NUMxMTQ1LjYgOTQ1IDExNDAuNiA5NDEuMyAxMTQwLjYgOTM0QzExNDAuNiA5MjYuNyAxMTQ0LjkgOTIyLjcgMTE1My42IDkyMkwxMTY3LjYgOTIwQzExODEuNiA5MTggMTE5MC43IDkxNCAxMTk1LjEgOTA4QzExOTkuNCA5MDIgMTIwMS42IDg5MiAxMjAxLjYgODc4TDEyMDEuNiAzMzdDMTIwMS42IDMyNSAxMTk5LjcgMzE2LjggMTE5Ni4xIDMxMi41QzExOTIuNCAzMDguMiAxMTg1LjkgMzA1LjMgMTE3Ni42IDMwNEwxMTU1LjYgMzAxQzExNDYuOSAzMDAuMyAxMTQyLjYgMjk2LjcgMTE0Mi42IDI5MEMxMTQyLjYgMjg0LjcgMTE0Ny45IDI4MSAxMTU4LjYgMjc5QzExNzkuMiAyNzUuNyAxMTk1LjEgMjcwLjMgMTIwNi4xIDI2M0MxMjE3LjEgMjU1LjcgMTIyOC42IDI0Ni43IDEyNDAuNiAyMzZDMTI0Ni42IDIzMCAxMjUxLjYgMjI3IDEyNTUuNiAyMjdDMTI2MS42IDIyNyAxMjY0LjYgMjMxIDEyNjQuNiAyMzlMMTI2NC42IDI3MEMxMjY0LjYgMjc0LjcgMTI2Ni42IDI3Ny44IDEyNzAuNiAyNzkuNUMxMjc0LjYgMjgxLjIgMTI3OS4yIDI3OS4zIDEyODQuNiAyNzRMMTI5NS42IDI2M0MxMzA4LjkgMjQ5LjcgMTMyMi42IDIzOS44IDEzMzYuNiAyMzMuNUMxMzUwLjYgMjI3LjIgMTM2Ni42IDIyNCAxMzg0LjYgMjI0QzE0MTUuMiAyMjQgMTQ0Mi40IDIzNC4yIDE0NjYuMSAyNTQuNUMxNDg5LjcgMjc0LjggMTUwOC40IDMwMyAxNTIyLjEgMzM5QzE1MzUuNyAzNzUgMTU0Mi42IDQxNy4zIDE1NDIuNiA0NjZDMTU0Mi42IDUyMS4zIDE1MzMuOSA1NzAuMyAxNTE2LjYgNjEzQzE0OTkuMiA2NTUuNyAxNDc1LjQgNjg5IDE0NDUuMSA3MTNDMTQxNC43IDczNyAxMzc5LjkgNzQ5IDEzNDAuNiA3NDlDMTMyMC42IDc0OSAxMzAyLjkgNzQ1LjMgMTI4Ny42IDczOEMxMjc1LjYgNzMyLjcgMTI2OS42IDczNi4zIDEyNjkuNiA3NDlMMTI2OS42IDg3OEMxMjY5LjYgODkyIDEyNzEuNyA5MDEuNSAxMjc2LjEgOTA2LjVDMTI4MC40IDkxMS41IDEyODkuNiA5MTUgMTMwMy42IDkxN0wxMzQwLjYgOTIyQzEzNDcuOSA5MjMuMyAxMzUxLjYgOTI3IDEzNTEuNiA5MzNDMTM1MS42IDk0MSAxMzQ2LjYgOTQ1IDEzMzYuNiA5NDVaTTEzNDMuNiA3MjRDMTM4MC45IDcyNCAxNDExLjEgNzAyIDE0MzQuMSA2NThDMTQ1Ny4xIDYxNCAxNDY4LjYgNTU0LjcgMTQ2OC42IDQ4MEMxNDY4LjYgNDExLjMgMTQ1OC42IDM1OSAxNDM4LjYgMzIzQzE0MTguNiAyODcgMTM5MC4yIDI2OSAxMzUzLjYgMjY5QzEzMzAuOSAyNjkgMTMxMS4yIDI3OC4zIDEyOTQuNiAyOTdDMTI3Ny45IDMxNS43IDEyNjkuNiAzNDEuNyAxMjY5LjYgMzc1TDEyNjkuNiA2MjdDMTI2OS42IDY1NyAxMjc2LjQgNjgwLjcgMTI5MC4xIDY5OEMxMzAzLjcgNzE1LjMgMTMyMS42IDcyNCAxMzQzLjYgNzI0Wk0xNTg3LjYgNzQwQzE1NzkuNiA3NDAgMTU3NS42IDczNi4zIDE1NzUuNiA3MjlDMTU3NS42IDcyMi4zIDE1NzkuMiA3MTguMyAxNTg2LjYgNzE3TDE2MDAuNiA3MTVDMTYxNC42IDcxMyAxNjIzLjcgNzA5IDE2MjguMSA3MDNDMTYzMi40IDY5NyAxNjM0LjYgNjg3IDE2MzQuNiA2NzNMMTYzNC42IDEwMEMxNjM0LjYgODggMTYzMi43IDc5LjggMTYyOS4xIDc1LjVDMTYyNS40IDcxLjIgMTYxOC45IDY4LjMgMTYwOS42IDY3TDE1ODguNiA2NEMxNTgxLjIgNjIuNyAxNTc3LjYgNTguNyAxNTc3LjYgNTJDMTU3Ny42IDQ1LjMgMTU4MS4yIDQxLjMgMTU4OC42IDQwQzE2MDcuMiAzNiAxNjIyLjkgMzEuMyAxNjM1LjYgMjZDMTY0OC4yIDIwLjcgMTY1OC45IDE1LjMgMTY2Ny42IDEwQzE2NzguMiAzLjMgMTY4Ni4yIDAgMTY5MS42IDBDMTY5OC45IDAgMTcwMi42IDUuMyAxNzAyLjYgMTZMMTcwMi42IDI4MUMxNzAyLjYgMjg3IDE3MDQuNiAyOTAuNSAxNzA4LjYgMjkxLjVDMTcxMi42IDI5Mi41IDE3MTcuNiAyOTAuMyAxNzIzLjYgMjg1QzE3NDguOSAyNjEuNyAxNzcxLjIgMjQ1LjcgMTc5MC42IDIzN0MxODA5LjkgMjI4LjMgMTgzMC4yIDIyNCAxODUxLjYgMjI0QzE4ODIuOSAyMjQgMTkwNy42IDIzNC41IDE5MjUuNiAyNTUuNUMxOTQzLjYgMjc2LjUgMTk1Mi42IDMwNy4zIDE5NTIuNiAzNDhMMTk1Mi42IDY3M0MxOTUyLjYgNjg3IDE5NTQuNyA2OTYuOCAxOTU5LjEgNzAyLjVDMTk2My40IDcwOC4yIDE5NzIuNiA3MTIgMTk4Ni42IDcxNEwyMDA4LjYgNzE3QzIwMTUuOSA3MTguMyAyMDE5LjYgNzIyLjMgMjAxOS42IDcyOUMyMDE5LjYgNzM2LjMgMjAxNS42IDc0MCAyMDA3LjYgNzQwTDE4MzkuNiA3NDBDMTgzMC4yIDc0MCAxODI1LjYgNzM2LjMgMTgyNS42IDcyOUMxODI1LjYgNzIyLjMgMTgyOS4yIDcxOC4zIDE4MzYuNiA3MTdMMTg1MC42IDcxNUMxODY0LjYgNzEzIDE4NzMuNyA3MDkgMTg3OC4xIDcwM0MxODgyLjQgNjk3IDE4ODQuNiA2ODcgMTg4NC42IDY3M0wxODg0LjYgMzU5QzE4ODQuNiAzMjYuMyAxODc4LjYgMzAzLjMgMTg2Ni42IDI5MEMxODU0LjYgMjc2LjcgMTgzNy42IDI3MCAxODE1LjYgMjcwQzE3OTQuMiAyNzAgMTc3NS4xIDI3Ni4yIDE3NTguMSAyODguNUMxNzQxLjEgMzAwLjggMTcyNy42IDMxNy4yIDE3MTcuNiAzMzcuNUMxNzA3LjYgMzU3LjggMTcwMi42IDM4MC4zIDE3MDIuNiA0MDVMMTcwMi42IDY3M0MxNzAyLjYgNjg3IDE3MDQuNyA2OTcgMTcwOS4xIDcwM0MxNzEzLjQgNzA5IDE3MjIuNiA3MTIuNyAxNzM2LjYgNzE0TDE3NjMuNiA3MTdDMTc3MC45IDcxOC4zIDE3NzQuNiA3MjIuMyAxNzc0LjYgNzI5QzE3NzQuNiA3MzYuMyAxNzcwLjYgNzQwIDE3NjIuNiA3NDBaTTI2MTIuMiA1MjcuN0MyNjAzLjEgNTg4LjYgMjU3NC43IDY0NSAyNTMxLjEgNjg4LjZDMjQ4Ny42IDczMi4xIDI0MzEuMiA3NjAuNiAyMzcwLjMgNzY5LjdMMjM2NS4yIDczNkMyNDE4LjkgNzI4IDI0NjguNyA3MDIuOSAyNTA3LjEgNjY0LjVDMjU0NS41IDYyNi4xIDI1NzAuNSA1NzYuNCAyNTc4LjYgNTIyLjdaTTIyODQuOSA3NjkuN0MyMjIzLjkgNzYwLjYgMjE2Ny42IDczMi4xIDIxMjQgNjg4LjZDMjA4MC40IDY0NSAyMDUyIDU4OC42IDIwNDIuOSA1MjcuN0wyMDc2LjUgNTIyLjdDMjA4NC42IDU3Ni40IDIxMDkuNiA2MjYuMSAyMTQ4LjEgNjY0LjVDMjE4Ni41IDcwMi45IDIyMzYuMiA3MjggMjI4OS45IDczNlpNMjA0Mi45IDQ0Mi4zQzIwNTIgMzgxLjQgMjA4MC40IDMyNSAyMTI0IDI4MS40QzIxNjcuNiAyMzcuOSAyMjIzLjkgMjA5LjQgMjI4NC45IDIwMC4zTDIyODkuOSAyMzRDMjIzNi4yIDI0MiAyMTg2LjUgMjY3LjEgMjE0OC4xIDMwNS41QzIxMDkuNiAzNDMuOSAyMDg0LjYgMzkzLjYgMjA3Ni41IDQ0Ny4zWk0yMzcwLjMgMjAwLjNDMjQzMS4yIDIwOS40IDI0ODcuNiAyMzcuOSAyNTMxLjEgMjgxLjRDMjU3NC43IDMyNSAyNjAzLjEgMzgxLjQgMjYxMi4yIDQ0Mi4zTDI1NzguNiA0NDcuM0MyNTcwLjUgMzkzLjYgMjU0NS41IDM0My45IDI1MDcuMSAzMDUuNUMyNDY4LjcgMjY3LjEgMjQxOC45IDI0MiAyMzY1LjIgMjM0Wk0yNDcwLjggNTI5LjVDMjQ2My42IDU1Mi43IDI0NTAuOCA1NzMuOSAyNDMzLjYgNTkxLjFDMjQxNi40IDYwOC4zIDIzOTUuMyA2MjEgMjM3Mi4xIDYyOC4zTDIzNjMuNCA2MDAuNEMyMzgyLjEgNTk0LjYgMjM5OS4yIDU4NC4zIDI0MTMgNTcwLjVDMjQyNi45IDU1Ni42IDI0MzcuMiA1MzkuNiAyNDQzIDUyMC45Wk0yMjgzLjEgNjI4LjNDMjI1OS44IDYyMSAyMjM4LjcgNjA4LjMgMjIyMS41IDU5MS4xQzIyMDQuMyA1NzMuOSAyMTkxLjUgNTUyLjcgMjE4NC4zIDUyOS41TDIyMTIuMSA1MjAuOUMyMjE4IDUzOS42IDIyMjguMiA1NTYuNiAyMjQyLjEgNTcwLjVDMjI1NiA1ODQuMyAyMjczIDU5NC42IDIyOTEuNyA2MDAuNFpNMjE4NC4zIDQ0MC41QzIxOTEuNSA0MTcuMyAyMjA0LjMgMzk2LjEgMjIyMS41IDM3OC45QzIyMzguNyAzNjEuNyAyMjU5LjggMzQ5IDIyODMuMSAzNDEuN0wyMjkxLjcgMzY5LjZDMjI3MyAzNzUuNCAyMjU2IDM4NS43IDIyNDIuMSAzOTkuNUMyMjI4LjIgNDEzLjQgMjIxOCA0MzAuNCAyMjEyLjEgNDQ5LjFaTTIzNzIuMSAzNDEuN0MyMzk1LjMgMzQ5IDI0MTYuNCAzNjEuNyAyNDMzLjYgMzc4LjlDMjQ1MC44IDM5Ni4xIDI0NjMuNiA0MTcuMyAyNDcwLjggNDQwLjVMMjQ0MyA0NDkuMUMyNDM3LjIgNDMwLjQgMjQyNi45IDQxMy40IDI0MTMgMzk5LjVDMjM5OS4yIDM4NS43IDIzODIuMSAzNzUuNCAyMzYzLjQgMzY5LjZaTTIzNDQuNSA0MDNMMjM0NC41IDE2MUwyMzEwLjYgMTYxTDIzMTAuNiA0MDNaTTIzMTAuNiA1NjdMMjMxMC42IDgwOUwyMzQ0LjUgODA5TDIzNDQuNSA1NjdaTTIyNDUuNSA0NjguMUwyMDAzLjYgNDY4LjFMMjAwMy42IDUwMS45TDIyNDUuNSA1MDEuOVpNMjQwOS42IDUwMS45TDI2NTEuNiA1MDEuOUwyNjUxLjYgNDY4LjFMMjQwOS42IDQ2OC4xWk0yMjkyLjUgNDg2LjVDMjI4Ny41IDQ3OC4yIDIyODUuNyA0NjguNCAyMjg3LjMgNDU4LjlDMjI4OC45IDQ0OS4zIDIyOTMuOCA0NDAuNyAyMzAxLjIgNDM0LjRDMjMwOC41IDQyOC4yIDIzMTcuOSA0MjQuNyAyMzI3LjYgNDI0LjdDMjMzNy4yIDQyNC43IDIzNDYuNiA0MjguMiAyMzUzLjkgNDM0LjRDMjM2MS4zIDQ0MC43IDIzNjYuMiA0NDkuMyAyMzY3LjggNDU4LjlDMjM2OS40IDQ2OC40IDIzNjcuNiA0NzguMiAyMzYyLjYgNDg2LjVMMjMyNy42IDU0NS4zWk0yMzQ0LjcgNDY1LjZDMjM0NC43IDQ2MSAyMzQyLjkgNDU2LjcgMjMzOS43IDQ1My40QzIzMzYuNSA0NTAuMiAyMzMyLjEgNDQ4LjQgMjMyNy42IDQ0OC40QzIzMjMgNDQ4LjQgMjMxOC43IDQ1MC4yIDIzMTUuNCA0NTMuNEMyMzEyLjIgNDU2LjcgMjMxMC40IDQ2MSAyMzEwLjQgNDY1LjZDMjMxMC40IDQ3MC4xIDIzMTIuMiA0NzQuNSAyMzE1LjQgNDc3LjdDMjMxOC43IDQ4MC45IDIzMjMgNDgyLjcgMjMyNy42IDQ4Mi43QzIzMzIuMSA0ODIuNyAyMzM2LjUgNDgwLjkgMjMzOS43IDQ3Ny43QzIzNDIuOSA0NzQuNSAyMzQ0LjcgNDcwLjEgMjM0NC43IDQ2NS42Wk0yODA3LjYgNzQ5QzI3OTAuOSA3NDkgMjc3NC45IDc0NS4zIDI3NTkuNiA3MzhDMjc0NC4yIDczMC43IDI3MzEuNiA3MTkgMjcyMS42IDcwM0MyNzExLjYgNjg3IDI3MDYuNiA2NjUuNyAyNzA2LjYgNjM5TDI3MDYuNiAyOTFDMjcwNi42IDI3OSAyNzA0LjcgMjcwLjcgMjcwMS4xIDI2NkMyNjk3LjQgMjYxLjMgMjY5MC45IDI1OC43IDI2ODEuNiAyNThMMjY2NC42IDI1NkMyNjUzLjIgMjU0LjcgMjY0Ny42IDI1MC4zIDI2NDcuNiAyNDNDMjY0Ny42IDIzNC4zIDI2NTMuOSAyMzAgMjY2Ni42IDIzMEwyNzU5LjYgMjMwQzI3NjkuNiAyMzAgMjc3NC42IDIzNSAyNzc0LjYgMjQ1TDI3NzQuNiA2MThDMjc3NC42IDY0OC43IDI3ODAuNCA2NzAuNSAyNzkyLjEgNjgzLjVDMjgwMy43IDY5Ni41IDI4MTkuOSA3MDMgMjg0MC42IDcwM0MyODYxLjIgNzAzIDI4NzkuNiA2OTcuMiAyODk1LjYgNjg1LjVDMjkxMS42IDY3My44IDI5MjQuNCA2NTguMiAyOTM0LjEgNjM4LjVDMjk0My43IDYxOC44IDI5NDguNiA1OTcuMyAyOTQ4LjYgNTc0TDI5NDguNiAyOTFDMjk0OC42IDI3OSAyOTQ2LjcgMjcwLjcgMjk0My4xIDI2NkMyOTM5LjQgMjYxLjMgMjkzMi45IDI1OC43IDI5MjMuNiAyNThMMjkwNi42IDI1NkMyODk1LjIgMjU0LjcgMjg4OS42IDI1MC4zIDI4ODkuNiAyNDNDMjg4OS42IDIzNC4zIDI4OTUuOSAyMzAgMjkwOC42IDIzMEwzMDAxLjYgMjMwQzMwMTEuNiAyMzAgMzAxNi42IDIzNSAzMDE2LjYgMjQ1TDMwMTYuNiA2MzNDMzAxNi42IDY0NSAzMDE4LjQgNjUzLjIgMzAyMi4xIDY1Ny41QzMwMjUuNyA2NjEuOCAzMDMyLjIgNjY0LjcgMzA0MS42IDY2NkwzMDYyLjYgNjY5QzMwNzEuMiA2NjkuNyAzMDc1LjYgNjczIDMwNzUuNiA2NzlDMzA3NS42IDY4NSAzMDcwLjIgNjg5IDMwNTkuNiA2OTFDMzAzOC45IDY5My43IDMwMjIuNCA2OTkgMzAxMC4xIDcwN0MyOTk3LjcgNzE1IDI5ODYuOSA3MjQuNyAyOTc3LjYgNzM2QzI5NzEuNiA3NDIgMjk2Ni42IDc0NSAyOTYyLjYgNzQ1QzI5NTYuNiA3NDUgMjk1My42IDc0MSAyOTUzLjYgNzMzTDI5NTMuNiA2ODdDMjk1My42IDY4MS43IDI5NTEuNyA2NzguNSAyOTQ4LjEgNjc3LjVDMjk0NC40IDY3Ni41IDI5NDAuNiA2NzggMjkzNi42IDY4MkMyOTExLjkgNzA2LjcgMjg5MC4xIDcyNCAyODcxLjEgNzM0QzI4NTIuMSA3NDQgMjgzMC45IDc0OSAyODA3LjYgNzQ5Wk0zMjA5LjYgNzQ5QzMxOTQuMiA3NDkgMzE3Ny45IDc0Ny4yIDMxNjAuNiA3NDMuNUMzMTQzLjIgNzM5LjggMzEyOS4yIDczNS4zIDMxMTguNiA3MzBDMzExMi42IDcyNi43IDMxMDkuNiA3MjEgMzEwOS42IDcxM0wzMTA2LjYgNjAxQzMxMDYuNiA1ODkuNyAzMTEwLjkgNTg0IDMxMTkuNiA1ODRDMzEyNi45IDU4NCAzMTMxLjkgNTg5LjMgMzEzNC42IDYwMEMzMTQ1LjkgNjQ3LjMgMzE1OS43IDY3OS43IDMxNzYuMSA2OTdDMzE5Mi40IDcxNC4zIDMyMTIuMiA3MjMgMzIzNS42IDcyM0MzMjU0LjkgNzIzIDMyNzAuOSA3MTUuNSAzMjgzLjYgNzAwLjVDMzI5Ni4yIDY4NS41IDMzMDIuNiA2NjQuNyAzMzAyLjYgNjM4QzMzMDIuNiA2MTEuMyAzMjk1LjIgNTg3LjcgMzI4MC42IDU2N0MzMjY1LjkgNTQ2LjMgMzI0MS4yIDUyMy43IDMyMDYuNiA0OTlDMzE3MS45IDQ3NS43IDMxNDYuNiA0NTIuMiAzMTMwLjYgNDI4LjVDMzExNC42IDQwNC44IDMxMDYuNiAzNzkgMzEwNi42IDM1MUMzMTA2LjYgMzEzIDMxMTkuOSAyODIuMyAzMTQ2LjYgMjU5QzMxNzMuMiAyMzUuNyAzMjA4LjYgMjI0IDMyNTIuNiAyMjRDMzI2NS45IDIyNCAzMjc4LjkgMjI1LjUgMzI5MS42IDIyOC41QzMzMDQuMiAyMzEuNSAzMzE1LjYgMjM2LjMgMzMyNS42IDI0M0MzMzMxLjYgMjQ3IDMzMzQuNiAyNTIuMyAzMzM0LjYgMjU5TDMzMzYuNiAzNjlDMzMzNi42IDM3OSAzMzMyLjYgMzg0IDMzMjQuNiAzODRDMzMxOS45IDM4NCAzMzE2LjYgMzgyLjUgMzMxNC42IDM3OS41QzMzMTIuNiAzNzYuNSAzMzEwLjkgMzcyLjcgMzMwOS42IDM2OEMzMjk2LjIgMzI0LjcgMzI4Mi45IDI5NC41IDMyNjkuNiAyNzcuNUMzMjU2LjIgMjYwLjUgMzIzOS45IDI1MiAzMjIwLjYgMjUyQzMyMDMuMiAyNTIgMzE4OC45IDI1OCAzMTc3LjYgMjcwQzMxNjYuMiAyODIgMzE2MC42IDI5NyAzMTYwLjYgMzE1QzMxNjAuNiAzMzguMyAzMTY3LjYgMzU4LjcgMzE4MS42IDM3NkMzMTk1LjYgMzkzLjMgMzIyMC45IDQxNC43IDMyNTcuNiA0NDBDMzI5MC45IDQ2NCAzMzE2LjEgNDg5LjggMzMzMy4xIDUxNy41QzMzNTAuMSA1NDUuMiAzMzU4LjYgNTc1LjMgMzM1OC42IDYwOEMzMzU4LjYgNjUwLjcgMzM0NC45IDY4NC44IDMzMTcuNiA3MTAuNUMzMjkwLjIgNzM2LjIgMzI1NC4yIDc0OSAzMjA5LjYgNzQ5Wk0zNTY2LjYgNzQ5QzM1MzQuNiA3NDkgMzUwNS45IDczOC4zIDM0ODAuNiA3MTdDMzQ1NS4yIDY5NS43IDM0MzUuMSA2NjUuNSAzNDIwLjEgNjI2LjVDMzQwNS4xIDU4Ny41IDMzOTcuNiA1NDIuMyAzMzk3LjYgNDkxQzMzOTcuNiA0MzguMyAzNDA1LjIgMzkyIDM0MjAuNiAzNTJDMzQzNS45IDMxMiAzNDU2LjkgMjgwLjcgMzQ4My42IDI1OEMzNTEwLjIgMjM1LjMgMzUzOS45IDIyNCAzNTcyLjYgMjI0QzM2MTEuOSAyMjQgMzY0My43IDI0MC4yIDM2NjguMSAyNzIuNUMzNjkyLjQgMzA0LjggMzcwNC42IDM1Ny4zIDM3MDQuNiA0MzBDMzcwNC42IDQ1MiAzNjk2LjIgNDYzIDM2NzkuNiA0NjNMMzQ4OS42IDQ2M0MzNDc2LjIgNDYzIDM0NjkuNiA0NzAuNyAzNDY5LjYgNDg2QzM0NjkuNiA1NTYuNyAzNDc5LjkgNjA5LjcgMzUwMC42IDY0NUMzNTIxLjIgNjgwLjMgMzU0Ny42IDY5OCAzNTc5LjYgNjk4QzM2MDQuOSA2OTggMzYyNS42IDY4OSAzNjQxLjYgNjcxQzM2NTcuNiA2NTMgMzY3MC42IDYyMi43IDM2ODAuNiA1ODBDMzY4Mi42IDU3Mi43IDM2ODYuOSA1NjkgMzY5My42IDU2OUMzNzAxLjYgNTY5IDM3MDQuNiA1NzUuNyAzNzAyLjYgNTg5QzM2OTEuOSA2NDguMyAzNjc0LjkgNjg5LjggMzY1MS42IDcxMy41QzM2MjguMiA3MzcuMiAzNTk5LjkgNzQ5IDM1NjYuNiA3NDlaTTM0ODYuNiA0MzhMMzU4Ny42IDQzOEMzNjE5LjYgNDM4IDM2MzUuNiA0MjEuMyAzNjM1LjYgMzg4QzM2MzUuNiAzNDQuNyAzNjMwLjIgMzEwLjcgMzYxOS42IDI4NkMzNjA4LjkgMjYxLjMgMzU5Mi45IDI0OSAzNTcxLjYgMjQ5QzM1NDUuNiAyNDkgMzUyMy43IDI2NCAzNTA2LjEgMjk0QzM0ODguNCAzMjQgMzQ3Ni45IDM2Ni43IDM0NzEuNiA0MjJDMzQ3MC4yIDQzMi43IDM0NzUuMiA0MzggMzQ4Ni42IDQzOFpNMTAuNiAxNTgwQzEuOSAxNTgwIC0xLjQgMTU3NS43IDAuNiAxNTY3TDEwMS42IDExMzVDMTA3LjYgMTExMC4zIDk5LjYgMTA5OCA3Ny42IDEwOThMNTYuNiAxMDk4QzQ1LjkgMTA5OCA0MC42IDEwOTMuMyA0MC42IDEwODRDNDAuNiAxMDc0LjcgNDYuNiAxMDcwIDU4LjYgMTA3MEM3OS4yIDEwNzAgOTQuNyAxMDY3LjMgMTA1LjEgMTA2MkMxMTUuNCAxMDU2LjcgMTIyLjIgMTA0NiAxMjUuNiAxMDMwQzEzNC4yIDk5MiAxNDcuMSA5NTguMiAxNjQuMSA5MjguNUMxODEuMSA4OTguOCAyMDEuNiA4NzUuMyAyMjUuNiA4NThDMjQ5LjYgODQwLjcgMjc1LjkgODMyIDMwNC42IDgzMkMzMjcuOSA4MzIgMzQ2LjcgODM3LjUgMzYxLjEgODQ4LjVDMzc1LjQgODU5LjUgMzgyLjYgODc0LjcgMzgyLjYgODk0QzM4Mi42IDkwOC43IDM3OC43IDkyMC41IDM3MS4xIDkyOS41QzM2My40IDkzOC41IDM1My45IDk0MyAzNDIuNiA5NDNDMzI4LjYgOTQzIDMxOS40IDkzOSAzMTUuMSA5MzFDMzEwLjcgOTIzIDMwOC4xIDkxMy43IDMwNy4xIDkwM0MzMDYuMSA4OTIuMyAzMDMuOSA4ODMgMzAwLjYgODc1QzI5Ny4yIDg2NyAyODkuNiA4NjMgMjc3LjYgODYzQzI2Mi4yIDg2MyAyNDguNyA4NzAuNSAyMzcuMSA4ODUuNUMyMjUuNCA5MDAuNSAyMTQuOSA5MjguNyAyMDUuNiA5NzBMMTg1LjYgMTA1N0MxODMuNiAxMDY1LjcgMTg3LjIgMTA3MCAxOTYuNiAxMDcwTDI3Ni42IDEwNzBDMjg5LjIgMTA3MCAyOTQuMiAxMDc0LjcgMjkxLjYgMTA4NEMyODkuNiAxMDkzLjMgMjgzLjYgMTA5OCAyNzMuNiAxMDk4TDE4Ni42IDEwOThDMTc5LjkgMTA5OCAxNzUuNiAxMTAxLjMgMTczLjYgMTEwOEw2Ni42IDE1NjlDNjQuNiAxNTc2LjMgNTkuOSAxNTgwIDUyLjYgMTU4MFpNNDI1LjYgOTc1QzQxMi45IDk3NSA0MDIuNCA5NzAuNSAzOTQuMSA5NjEuNUMzODUuNyA5NTIuNSAzODEuNiA5NDEuNyAzODEuNiA5MjlDMzgxLjYgOTExIDM4Ny4xIDg5Ni43IDM5OC4xIDg4NkM0MDkuMSA4NzUuMyA0MjEuNiA4NzAgNDM1LjYgODcwQzQ0OC45IDg3MCA0NjAuMSA4NzQuMiA0NjkuMSA4ODIuNUM0NzguMSA4OTAuOCA0ODIuNiA5MDEuNyA0ODIuNiA5MTVDNDgyLjYgOTMzLjcgNDc2LjkgOTQ4LjMgNDY1LjYgOTU5QzQ1NC4yIDk2OS43IDQ0MC45IDk3NSA0MjUuNiA5NzVaTTM0My42IDE1OTBDMzIxLjYgMTU5MCAzMDUuOSAxNTgxLjggMjk2LjYgMTU2NS41QzI4Ny4yIDE1NDkuMiAyODYuOSAxNTIyLjMgMjk1LjYgMTQ4NUwzNjkuNiAxMTY4QzM3Mi45IDExNTMuMyAzNzMuNCAxMTQxLjggMzcxLjEgMTEzMy41QzM2OC43IDExMjUuMiAzNjIuNiAxMTIxIDM1Mi42IDExMjFDMzQwLjYgMTEyMSAzMjcuNCAxMTI5LjggMzEzLjEgMTE0Ny41QzI5OC43IDExNjUuMiAyODIuNiAxMTk4LjcgMjY0LjYgMTI0OEMyNjEuOSAxMjU2LjcgMjU3LjIgMTI2MSAyNTAuNiAxMjYxQzI0MC42IDEyNjEgMjM3LjkgMTI1NSAyNDIuNiAxMjQzQzI1Ny4yIDExOTcgMjcyLjcgMTE2MSAyODkuMSAxMTM1QzMwNS40IDExMDkgMzIxLjkgMTA5MC43IDMzOC42IDEwODBDMzU1LjIgMTA2OS4zIDM3MC42IDEwNjQgMzg0LjYgMTA2NEM0MDcuOSAxMDY0IDQyNC4yIDEwNzIuMiA0MzMuNiAxMDg4LjVDNDQyLjkgMTEwNC44IDQ0My4yIDExMzEuNyA0MzQuNiAxMTY5TDM2MC42IDE0ODZDMzU3LjIgMTUwMC43IDM1Ni43IDE1MTIuMiAzNTkuMSAxNTIwLjVDMzYxLjQgMTUyOC44IDM2Ny42IDE1MzMgMzc3LjYgMTUzM0MzODkuNiAxNTMzIDQwMi43IDE1MjQuMiA0MTcuMSAxNTA2LjVDNDMxLjQgMTQ4OC44IDQ0Ny42IDE0NTUuMyA0NjUuNiAxNDA2QzQ2OC4yIDEzOTcuMyA0NzIuOSAxMzkzIDQ3OS42IDEzOTNDNDg5LjYgMTM5MyA0OTIuMiAxMzk5IDQ4Ny42IDE0MTFDNDczLjYgMTQ1Ni4zIDQ1OC4xIDE0OTIuMiA0NDEuMSAxNTE4LjVDNDI0LjEgMTU0NC44IDQwNy4yIDE1NjMuMyAzOTAuNiAxNTc0QzM3My45IDE1ODQuNyAzNTguMiAxNTkwIDM0My42IDE1OTBaTTU1MC42IDE1NjdMNjQ1LjYgMTE2OEM2NDguOSAxMTUzLjMgNjQ5LjQgMTE0MS44IDY0Ny4xIDExMzMuNUM2NDQuNyAxMTI1LjIgNjM4LjYgMTEyMSA2MjguNiAxMTIxQzYxNi42IDExMjEgNjAzLjQgMTEyOS44IDU4OS4xIDExNDcuNUM1NzQuNyAxMTY1LjIgNTU4LjYgMTE5OC43IDU0MC42IDEyNDhDNTM3LjkgMTI1Ni43IDUzMy4yIDEyNjEgNTI2LjYgMTI2MUM1MTYuNiAxMjYxIDUxMy45IDEyNTUgNTE4LjYgMTI0M0M1MzMuMiAxMTk3IDU0OC43IDExNjEgNTY1LjEgMTEzNUM1ODEuNCAxMTA5IDU5Ny45IDEwOTAuNyA2MTQuNiAxMDgwQzYzMS4yIDEwNjkuMyA2NDYuNiAxMDY0IDY2MC42IDEwNjRDNjgyLjYgMTA2NCA2OTguMiAxMDcyLjIgNzA3LjYgMTA4OC41QzcxNi45IDExMDQuOCA3MTcuMiAxMTMxLjcgNzA4LjYgMTE2OUw2ODMuNiAxMjc3QzY4Mi45IDEyODEuNyA2ODMuOSAxMjg0LjMgNjg2LjYgMTI4NUM2ODkuMiAxMjg1LjcgNjkxLjYgMTI4NCA2OTMuNiAxMjgwQzcxOS42IDEyMjYgNzQ0LjYgMTE4My4yIDc2OC42IDExNTEuNUM3OTIuNiAxMTE5LjggODE1LjIgMTA5Ny4zIDgzNi42IDEwODRDODU3LjkgMTA3MC43IDg3Ny4yIDEwNjQgODk0LjYgMTA2NEM5MTkuMiAxMDY0IDkzNy4yIDEwNzQgOTQ4LjYgMTA5NEM5NTkuOSAxMTE0IDk1OS45IDExNDQuNyA5NDguNiAxMTg2TDg3Mi42IDE0NzZDODY3LjkgMTQ5NC43IDg2Ny42IDE1MDguNyA4NzEuNiAxNTE4Qzg3NS42IDE1MjcuMyA4ODIuOSAxNTMyIDg5My42IDE1MzJDOTA2LjkgMTUzMiA5MjAuMSAxNTIzLjIgOTMzLjEgMTUwNS41Qzk0Ni4xIDE0ODcuOCA5NTkuNiAxNDU0LjMgOTczLjYgMTQwNUM5NzUuNiAxMzk3LjcgOTc5LjkgMTM5NCA5ODYuNiAxMzk0Qzk5MS45IDEzOTQgOTk1LjEgMTM5NiA5OTYuMSAxNDAwQzk5Ny4xIDE0MDQgOTk2LjkgMTQwOC43IDk5NS42IDE0MTRDOTgyLjkgMTQ1OS4zIDk2OS4yIDE0OTQuOCA5NTQuNiAxNTIwLjVDOTM5LjkgMTU0Ni4yIDkyNS4xIDE1NjQgOTEwLjEgMTU3NEM4OTUuMSAxNTg0IDg3OS45IDE1ODkgODY0LjYgMTU4OUM4NDAuNiAxNTg5IDgyMi42IDE1NzkgODEwLjYgMTU1OUM3OTguNiAxNTM5IDc5Ny45IDE1MDggODA4LjYgMTQ2Nkw4ODUuNiAxMTc2Qzg5Mi45IDExNTAgODk0LjEgMTEzMiA4ODkuMSAxMTIyQzg4NC4xIDExMTIgODc2LjkgMTEwNyA4NjcuNiAxMTA3Qzg1Mi45IDExMDcgODM2LjIgMTExNi4yIDgxNy42IDExMzQuNUM3OTguOSAxMTUyLjggNzc5LjkgMTE3Ny44IDc2MC42IDEyMDkuNUM3NDEuMiAxMjQxLjIgNzIyLjIgMTI3NyA3MDMuNiAxMzE3QzY4NC45IDEzNTcgNjY4LjEgMTM5OC43IDY1My4xIDE0NDJDNjM4LjEgMTQ4NS4zIDYyNS45IDE1MjcuNyA2MTYuNiAxNTY5QzYxNC42IDE1NzYuMyA2MDkuOSAxNTgwIDYwMi42IDE1ODBMNTYxLjYgMTU4MEM1NTIuMiAxNTgwIDU0OC42IDE1NzUuNyA1NTAuNiAxNTY3Wk0xMDk2LjYgMTU4OUMxMDcxLjkgMTU4OSAxMDUyLjkgMTU3OC43IDEwMzkuNiAxNTU4QzEwMjYuMiAxNTM3LjMgMTAxOS42IDE1MDcgMTAxOS42IDE0NjdDMTAxOS42IDE0MjkgMTAyNC45IDEzOTAuOCAxMDM1LjYgMTM1Mi41QzEwNDYuMiAxMzE0LjIgMTA2MC45IDEyNzcuNyAxMDc5LjYgMTI0M0MxMDk4LjIgMTIwOC4zIDExMTkuNCAxMTc3LjcgMTE0My4xIDExNTFDMTE2Ni43IDExMjQuMyAxMTkxLjcgMTEwMy4yIDEyMTguMSAxMDg3LjVDMTI0NC40IDEwNzEuOCAxMjcwLjYgMTA2NCAxMjk2LjYgMTA2NEMxMzE0LjYgMTA2NCAxMzMwLjIgMTA2OC43IDEzNDMuNiAxMDc4QzEzNTIuOSAxMDg0IDEzNTguNiAxMDgyIDEzNjAuNiAxMDcyTDEzOTIuNiA5NDBDMTM5NS45IDkyOCAxMzk2LjEgOTE5LjcgMTM5My4xIDkxNUMxMzkwLjEgOTEwLjMgMTM4My45IDkwNy43IDEzNzQuNiA5MDdMMTM0NC42IDkwNEMxMzM0LjYgOTAzLjMgMTMzMC4yIDg5OSAxMzMxLjYgODkxQzEzMzIuOSA4ODUgMTMzNy42IDg4MS4zIDEzNDUuNiA4ODBDMTM2OS42IDg3NiAxMzkwLjkgODcxLjIgMTQwOS42IDg2NS41QzE0MjguMiA4NTkuOCAxNDQzLjIgODUyLjMgMTQ1NC42IDg0M0MxNDU5LjkgODM5IDE0NjQuOSA4MzcgMTQ2OS42IDgzN0MxNDc3LjYgODM3IDE0ODAuNiA4NDIgMTQ3OC42IDg1MkwxMzM2LjYgMTQ2N0MxMzI2LjYgMTUxMC4zIDEzMzMuMiAxNTMyIDEzNTYuNiAxNTMyQzEzNzEuOSAxNTMyIDEzODUuNyAxNTIxLjcgMTM5OC4xIDE1MDFDMTQxMC40IDE0ODAuMyAxNDIyLjkgMTQ0OC4zIDE0MzUuNiAxNDA1QzE0MzcuNiAxMzk3LjcgMTQ0MS45IDEzOTQgMTQ0OC42IDEzOTRDMTQ1My4yIDEzOTQgMTQ1Ni4yIDEzOTYgMTQ1Ny42IDE0MDBDMTQ1OC45IDE0MDQgMTQ1OC45IDE0MDguNyAxNDU3LjYgMTQxNEMxNDQ0LjkgMTQ3Ni43IDE0MjcuNCAxNTIxLjUgMTQwNS4xIDE1NDguNUMxMzgyLjcgMTU3NS41IDEzNTYuNiAxNTg5IDEzMjYuNiAxNTg5QzEzMDAuNiAxNTg5IDEyODIuMSAxNTc4IDEyNzEuMSAxNTU2QzEyNjAuMSAxNTM0IDEyNTguOSAxNTA0IDEyNjcuNiAxNDY2TDEyNzguNiAxNDIwQzEyNzkuOSAxNDE1LjMgMTI3OS4xIDE0MTIuNyAxMjc2LjEgMTQxMkMxMjczLjEgMTQxMS4zIDEyNzAuNiAxNDEzIDEyNjguNiAxNDE3QzEyMzYuNiAxNDc5LjcgMTIwNi4yIDE1MjQgMTE3Ny42IDE1NTBDMTE0OC45IDE1NzYgMTEyMS45IDE1ODkgMTA5Ni42IDE1ODlaTTExMjAuNiAxNTM4QzExMzYuNiAxNTM4IDExNTQuMiAxNTI4LjMgMTE3My42IDE1MDlDMTE5Mi45IDE0ODkuNyAxMjEyLjEgMTQ2NC43IDEyMzEuMSAxNDM0QzEyNTAuMSAxNDAzLjMgMTI2Ny42IDEzNzAuMyAxMjgzLjYgMTMzNUMxMjk5LjYgMTI5OS43IDEzMTIuNCAxMjY1LjcgMTMyMi4xIDEyMzNDMTMzMS43IDEyMDAuMyAxMzM2LjYgMTE3Mi43IDEzMzYuNiAxMTUwQzEzMzYuNiAxMTA5LjMgMTMyMi4yIDEwODkgMTI5My42IDEwODlDMTI3Ni4yIDEwODkgMTI1Ny45IDEwOTYuOCAxMjM4LjYgMTExMi41QzEyMTkuMiAxMTI4LjIgMTIwMC43IDExNDkuMyAxMTgzLjEgMTE3NkMxMTY1LjQgMTIwMi43IDExNDkuNCAxMjMyLjggMTEzNS4xIDEyNjYuNUMxMTIwLjcgMTMwMC4yIDExMDkuMiAxMzM1LjIgMTEwMC42IDEzNzEuNUMxMDkxLjkgMTQwNy44IDEwODcuNiAxNDQzLjMgMTA4Ny42IDE0NzhDMTA4Ny42IDE1MDEuMyAxMDkwLjcgMTUxNy4yIDEwOTcuMSAxNTI1LjVDMTEwMy40IDE1MzMuOCAxMTExLjIgMTUzOCAxMTIwLjYgMTUzOFpNMTU5Ny42IDE1ODlDMTU2Mi4yIDE1ODkgMTUzMy45IDE1NzUuMiAxNTEyLjYgMTU0Ny41QzE0OTEuMiAxNTE5LjggMTQ4MC42IDE0ODAuNyAxNDgwLjYgMTQzMEMxNDgwLjYgMTM4NiAxNDg4LjQgMTM0Mi4zIDE1MDQuMSAxMjk5QzE1MTkuNyAxMjU1LjcgMTU0MC4yIDEyMTYuMyAxNTY1LjYgMTE4MUMxNTkwLjkgMTE0NS43IDE2MTguNyAxMTE3LjMgMTY0OS4xIDEwOTZDMTY3OS40IDEwNzQuNyAxNzA4LjkgMTA2NCAxNzM3LjYgMTA2NEMxNzY4LjkgMTA2NCAxNzkxLjQgMTA3MS41IDE4MDUuMSAxMDg2LjVDMTgxOC43IDExMDEuNSAxODI1LjYgMTEyMS43IDE4MjUuNiAxMTQ3QzE4MjUuNiAxMTc3IDE4MTUuMSAxMjA2LjggMTc5NC4xIDEyMzYuNUMxNzczLjEgMTI2Ni4yIDE3NDMuNyAxMjkyLjcgMTcwNi4xIDEzMTZDMTY2OC40IDEzMzkuMyAxNjI0LjIgMTM1Ni43IDE1NzMuNiAxMzY4QzE1NTguOSAxMzcxLjMgMTU1MS4yIDEzNzkuNyAxNTUwLjYgMTM5M0MxNTQ5LjkgMTM5Ny43IDE1NDkuNiAxNDAyLjUgMTU0OS42IDE0MDcuNUMxNTQ5LjYgMTQxMi41IDE1NDkuNiAxNDE3LjMgMTU0OS42IDE0MjJDMTU0OS42IDE0NjAgMTU1Ni4xIDE0ODguNyAxNTY5LjEgMTUwOEMxNTgyLjEgMTUyNy4zIDE1OTkuOSAxNTM3IDE2MjIuNiAxNTM3QzE2NDcuOSAxNTM3IDE2NzIuNCAxNTI1LjMgMTY5Ni4xIDE1MDJDMTcxOS43IDE0NzguNyAxNzM5LjYgMTQ0NS43IDE3NTUuNiAxNDAzQzE3NTcuNiAxMzk3IDE3NjEuNiAxMzk0IDE3NjcuNiAxMzk0QzE3NzEuNiAxMzk0IDE3NzQuMSAxMzk1LjcgMTc3NS4xIDEzOTlDMTc3Ni4xIDE0MDIuMyAxNzc1LjkgMTQwNi4zIDE3NzQuNiAxNDExQzE3NTMuMiAxNDY5LjcgMTcyNy40IDE1MTQgMTY5Ny4xIDE1NDRDMTY2Ni43IDE1NzQgMTYzMy42IDE1ODkgMTU5Ny42IDE1ODlaTTE1NjAuNiAxMzMwQzE1NTkuMiAxMzM0LjcgMTU2MC4xIDEzMzguNSAxNTYzLjEgMTM0MS41QzE1NjYuMSAxMzQ0LjUgMTU2OS45IDEzNDUuMyAxNTc0LjYgMTM0NEMxNjE1LjkgMTMzMi43IDE2NTAuNiAxMzE1LjUgMTY3OC42IDEyOTIuNUMxNzA2LjYgMTI2OS41IDE3MjcuNyAxMjQzLjcgMTc0Mi4xIDEyMTVDMTc1Ni40IDExODYuMyAxNzYzLjYgMTE1OC4zIDE3NjMuNiAxMTMxQzE3NjMuNiAxMTAzIDE3NTIuNiAxMDg5IDE3MzAuNiAxMDg5QzE3MTEuMiAxMDg5IDE2OTAuMiAxMTAwLjMgMTY2Ny42IDExMjNDMTY0NC45IDExNDUuNyAxNjIzLjkgMTE3NS4zIDE2MDQuNiAxMjEyQzE1ODUuMiAxMjQ4LjcgMTU3MC42IDEyODggMTU2MC42IDEzMzBaTTE4NjguNiAxNTgwQzE4NTkuMiAxNTgwIDE4NTUuNiAxNTc1LjcgMTg1Ny42IDE1NjdMMTk1Mi42IDExNjhDMTk1NS45IDExNTMuMyAxOTU2LjQgMTE0MS44IDE5NTQuMSAxMTMzLjVDMTk1MS43IDExMjUuMiAxOTQ1LjYgMTEyMSAxOTM1LjYgMTEyMUMxOTIzLjYgMTEyMSAxOTEwLjQgMTEyOS44IDE4OTYuMSAxMTQ3LjVDMTg4MS43IDExNjUuMiAxODY1LjYgMTE5OC43IDE4NDcuNiAxMjQ4QzE4NDQuOSAxMjU2LjcgMTg0MC4yIDEyNjEgMTgzMy42IDEyNjFDMTgyMy42IDEyNjEgMTgyMC45IDEyNTUgMTgyNS42IDEyNDNDMTg0MC4yIDExOTcgMTg1NS43IDExNjEgMTg3Mi4xIDExMzVDMTg4OC40IDExMDkgMTkwNC45IDEwOTAuNyAxOTIxLjYgMTA4MEMxOTM4LjIgMTA2OS4zIDE5NTMuNiAxMDY0IDE5NjcuNiAxMDY0QzE5ODkuNiAxMDY0IDIwMDUuMiAxMDcyLjIgMjAxNC42IDEwODguNUMyMDIzLjkgMTEwNC44IDIwMjQuMiAxMTMxLjcgMjAxNS42IDExNjlMMjAwNC42IDEyMTZDMjAwMy45IDEyMjAuNyAyMDA0LjkgMTIyMy4zIDIwMDcuNiAxMjI0QzIwMTAuMiAxMjI0LjcgMjAxMi42IDEyMjMgMjAxNC42IDEyMTlDMjAzOS45IDExNjEgMjA2Mi45IDExMjAuNyAyMDgzLjYgMTA5OEMyMTA0LjIgMTA3NS4zIDIxMjcuOSAxMDY0IDIxNTQuNiAxMDY0QzIxNzIuNiAxMDY0IDIxODYuMSAxMDY4LjggMjE5NS4xIDEwNzguNUMyMjA0LjEgMTA4OC4yIDIyMDguNiAxMTAxLjMgMjIwOC42IDExMThDMjIwOC42IDExMzQuNyAyMjA0LjYgMTE0OCAyMTk2LjYgMTE1OEMyMTg4LjYgMTE2OCAyMTc4LjIgMTE3MyAyMTY1LjYgMTE3M0MyMTU0LjkgMTE3MyAyMTQ3LjIgMTE3MC4zIDIxNDIuNiAxMTY1QzIxMzcuOSAxMTU5LjcgMjEzNC40IDExNTMuNSAyMTMyLjEgMTE0Ni41QzIxMjkuNyAxMTM5LjUgMjEyNy4yIDExMzMuMyAyMTI0LjYgMTEyOEMyMTIxLjkgMTEyMi43IDIxMTcuNiAxMTIwIDIxMTEuNiAxMTIwQzIxMDEuNiAxMTIwIDIwODguNiAxMTMyLjcgMjA3Mi42IDExNThDMjA1Ni42IDExODMuMyAyMDM5LjQgMTIxNy41IDIwMjEuMSAxMjYwLjVDMjAwMi43IDEzMDMuNSAxOTg1LjEgMTM1MS43IDE5NjguMSAxNDA1QzE5NTEuMSAxNDU4LjMgMTkzNi4yIDE1MTMgMTkyMy42IDE1NjlDMTkyMS42IDE1NzYuMyAxOTE2LjkgMTU4MCAxOTA5LjYgMTU4MFoiLz48L3N2Zz4K");
  -webkit-mask: var(--logo-art) center / contain no-repeat; mask: var(--logo-art) center / contain no-repeat; }
/* The colour is set on the ground, not on the logo, so the nearest ground always decides (a dark band inside a light page gets Plaster Light). */
:root, [data-theme="desk"], [data-theme="study"] { --logo: #24453b; --post-accent: var(--rust); }
[data-theme="desk-dark"], [data-theme="study-night"], .h-post.has-photo, .h-rail, .h-band { --logo: #f7f6f2; --post-accent: #b4501e; }
@media (prefers-color-scheme: dark) { :root:not([data-theme]) { --logo: #f7f6f2; --post-accent: #b4501e; } }
.h-logo.is-green { --logo: #24453b; } .h-logo.is-plaster { --logo: #f7f6f2; } .h-logo.is-ink { --logo: var(--ink); }
.h-post-foot .h-logo { height: 8.3cqw; }
/* ---- end logo ---- */

/* ---- Social: one post, sized by its own width ------------------------- */
/* Every size inside a post is in cqw (1cqw = 1% of the post's width), so the same markup is right at
   270px in a preview and at 1080px on export. Set the ground with data-theme: "study" (plaster) or "study-night" (Deep Shutter). */
.h-post { container-type: inline-size; position: relative; overflow: hidden; width: 100%; aspect-ratio: 4 / 5; background: var(--ground); color: var(--ink); font-family: var(--face-ui); }
.h-post.is-reel { aspect-ratio: 9 / 16; }
.h-post.is-square { aspect-ratio: 1 / 1; }
.h-post.is-wide { aspect-ratio: 1200 / 627; }
.h-post-in { position: absolute; inset: 0; display: flex; flex-direction: column; justify-content: space-between; gap: 4cqw; padding: 8cqw 7.5cqw 7cqw; }
.h-post.is-reel .h-post-in { padding: 15cqw 7.5cqw 24cqw; }
.h-post-photo { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.h-post.has-photo { color: #f7f6f2; background: #142822; }
.h-post.has-photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(20, 40, 34, 0.62) 0%, rgba(20, 40, 34, 0.1) 26%, rgba(20, 40, 34, 0.18) 42%, rgba(20, 40, 34, 0.88) 68%, rgba(20, 40, 34, 0.97) 100%); }
.h-post.has-photo .h-post-in { z-index: 1; justify-content: flex-start; }
/* On a photo the words sit low, on the dark part of the scrim, never across the picture's subject. */
.h-post.has-photo .h-post-in > :nth-child(2) { margin-top: auto; }
.h-post-label { font: 500 2.6cqw/1.3 var(--face-label); letter-spacing: .1em; text-transform: uppercase; display: flex; justify-content: space-between; gap: 3cqw; }
.h-post-serif { font: 400 13cqw/.95 var(--face-title); letter-spacing: -.015em; text-wrap: balance; margin: 0; }
.h-post-serif em { font-style: italic; }
.h-post-hook { font: 400 15.5cqw/.94 var(--font-poster); letter-spacing: .005em; text-transform: uppercase; text-wrap: balance; margin: 0; }
.h-post-serif + .h-post-hook, .h-post-hook + .h-post-serif { margin-top: 1.5cqw; }
.h-post-body { font: 500 4.2cqw/1.35 var(--face-ui); letter-spacing: -.01em; max-width: 30ch; margin: 0; }
.h-post-figure { font: 400 34cqw/.86 var(--face-title); letter-spacing: -.03em; font-variant-numeric: lining-nums; margin: 0; }
.h-post-figure small { font-size: .42em; letter-spacing: -.01em; }
.h-post-rule { border: 0; border-top: .3cqw solid currentColor; margin: 0; }
/* A swipe-through slide: steps along the top, a large serif numeral, a heavy sans heading. */
.h-post-top { display: grid; gap: 2.6cqw; }
.h-post-steps { display: flex; gap: 1.2cqw; }
.h-post-steps i { flex: 1; height: .8cqw; background: currentColor; opacity: .24; }
.h-post-steps i.is-on { opacity: 1; }
.h-post-num { font: 400 34cqw/.8 var(--face-title); letter-spacing: -.04em; font-variant-numeric: lining-nums; color: var(--post-accent); margin: 0; }
.h-post-head { font: 700 9.6cqw/.98 var(--face-ui); letter-spacing: -.04em; text-transform: uppercase; text-wrap: balance; margin: 0; }
.h-post-head + .h-post-body { margin-top: 3cqw; }
.h-post-foot { display: flex; justify-content: space-between; align-items: flex-end; gap: 4cqw; }
.h-post-foot img { height: 8.4cqw; width: auto; display: block; }
.h-post-sign { font: 500 2.1cqw/1.45 var(--face-label); letter-spacing: .04em; text-align: right; }
.h-post-rust, .h-post-gold { color: var(--post-accent); }
.h-post-count { font: 500 2.6cqw/1 var(--face-label); letter-spacing: .1em; }
/* Spoken-word captions on video: Geist bold, two lines at most, the word being said in Copper. */
.h-post-caption { align-self: center; text-align: center; font: 700 6.4cqw/1.16 var(--face-ui); letter-spacing: -.02em; max-width: 16ch; margin: 0; padding: 2.2cqw 3.6cqw 2.6cqw; background: rgba(20, 40, 34, 0.94); color: #f7f6f2; }
.h-post.has-photo .h-post-in > .h-post-caption { margin-block: auto; }
.h-post-caption mark { background: none; color: #b4501e; }
/* The arch: a shophouse window, used to crop one photo inside a card. */
.h-post-arch { width: 100%; flex: 1 1 0; min-height: 0; object-fit: cover; border-radius: var(--radius-arch) var(--radius-arch) 0 0; display: block; }
/* Safe-zone guide for reels and stories: nothing but photo above the top line or below the bottom line. */
.h-post-safe { position: absolute; inset: 13% 6% 21% 6%; border: .4cqw dashed currentColor; opacity: .7; pointer-events: none; z-index: 2; }

/* finder.css — where things sit on the Shophouse Finder website (5 Oct 2026).
   The look is house.css's Study dialect, which is joined to this file as one style.css;
   this file only places things. Tokens only: it adds no colour, font, radius or shadow.
   Her ask: "For the property website: it should also be in my branding". */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: var(--space-6); -webkit-text-size-adjust: 100%; background: var(--ground); }
body { margin: 0; }
img, video { display: block; max-width: 100%; height: auto; }   /* height: auto, or an image's own height attribute wins over its shape */
a { color: inherit; text-decoration-color: var(--control-edge); text-underline-offset: 3px; }
a:hover { text-decoration-color: currentColor; }
h1, h2, h3, p, dl, dd, ul, ol, figure { margin: 0; }
.sf-wrap { max-width: calc(var(--width-study) + 2 * var(--space-6)); margin-inline: auto; padding-inline: var(--space-6); }
.sf-skip { position: absolute; left: var(--space-4); top: -120px; z-index: 10; background: var(--surface); padding: var(--space-3) var(--space-4); }
.sf-skip:focus { top: var(--space-3); }

/* ---- Masthead: the logo, and the folio as the site's navigation labels ---- */
.sf-top { display: flex; align-items: center; justify-content: space-between; gap: var(--space-4) var(--space-6); flex-wrap: wrap; padding-block: var(--space-5); border-bottom: 1.5px solid var(--ink); }
.sf-top .h-logo { height: 50px; }
.sf-nav { display: flex; flex-wrap: wrap; gap: 0 var(--space-6); }
.sf-nav a { font: 500 11px/1.4 var(--face-label); letter-spacing: .08em; text-transform: uppercase; text-decoration: none; padding-block: var(--space-3); }
.sf-nav a:hover, .sf-nav a[aria-current="page"] { text-decoration: underline; text-underline-offset: 6px; }
.sf-crumbs { display: flex; flex-wrap: wrap; gap: 0 var(--space-2); list-style: none; padding: var(--space-5) 0 0; font: 500 11px/1.7 var(--face-label); letter-spacing: .08em; text-transform: uppercase; color: var(--muted); }
.sf-crumbs li + li::before { content: '/'; margin-right: var(--space-2); }
.sf-crumbs a { text-decoration: none; }
.sf-crumbs a:hover { text-decoration: underline; }

/* ---- The top of a page: label, headline, the plain answer, one action, one picture under the arch ---- */
.sf-hero { padding-block: var(--space-8) var(--space-9); }
.sf-hero.is-plain { max-width: 820px; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); }
.sf-hero .h-lede, .sf-hero.h-hero .h-lede { max-width: 58ch; }
.sf-hero .h-arch { max-height: 78vh; }
/* On a phone the arch must not fill the screen before the price and the button are seen. */
@media (max-width: 820px) { .sf-hero .h-arch { aspect-ratio: 4 / 3; max-height: 56vh; } }
.sf-tagline { font: 500 17px/1.45 var(--face-ui); color: var(--ink); max-width: 58ch; }
a.sf-arch { display: block; align-self: stretch; }
.sf-sub { font: 500 15px/1.4 var(--face-ui); color: var(--muted); }
.sf-zh { color: var(--muted); max-width: 58ch; font-size: 15px; }
.sf-deal { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-3) var(--space-6); margin-top: var(--space-2); }
.sf-price { font-family: var(--face-title); font-size: clamp(2rem, 3.4vw, 2.6rem); line-height: 1; letter-spacing: -.012em; font-variant-numeric: lining-nums; }
.sf-price small { font: 500 13px/1 var(--face-ui); letter-spacing: 0; color: var(--muted); }
.sf-hero .h-btn, .sf-contact .h-btn { min-height: 44px; padding-inline: 20px; font-size: 14px; }

/* ---- Sections: a serif heading on the left, the matter on the right ---- */
.sf-section { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2.15fr); gap: var(--space-5) var(--space-9); padding-block: var(--space-9); border-top: 1px solid var(--line-strong); }
.sf-section.is-wide { display: block; }
.sf-section.is-wide > .sf-head { margin-bottom: var(--space-6); max-width: 720px; }
.sf-h2 { font-family: var(--face-title); font-weight: 400; font-size: clamp(1.9rem, 3vw, 2.4rem); line-height: 1.05; letter-spacing: -.012em; text-wrap: balance; }
.sf-head p { margin-top: var(--space-3); font-size: 14px; line-height: 1.55; color: var(--muted); }
.sf-prose { max-width: var(--measure-read); }
.sf-prose > * + * { margin-top: var(--space-4); }
.sf-prose ul { list-style: none; padding: 0; border-top: 1px solid var(--line-strong); }
.sf-prose li { padding: var(--space-3) 0; border-bottom: 1px solid var(--line-strong); }
.sf-source { margin-top: var(--space-4); max-width: var(--measure-read); font-size: 13px; line-height: 1.55; color: var(--muted); }
.sf-band { margin-block: 0 var(--space-2); }

/* ---- Facts: a label and its value, ruled ---- */
.sf-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 var(--space-8); border-top: 1.5px solid var(--ink); }
.sf-facts > div { padding: var(--space-3) 0; border-bottom: 1px solid var(--line-strong); }
.sf-facts dt { font: 500 11px/1.5 var(--face-label); letter-spacing: .08em; text-transform: uppercase; color: var(--muted); }
.sf-facts dd { margin-top: 2px; overflow-wrap: anywhere; }

/* ---- A listing as a row: picture, street, facts, state ---- */
.sf-rows { border-top: 1.5px solid var(--ink); }
.sf-row { display: grid; grid-template-columns: 168px minmax(0, 1fr) auto; gap: var(--space-5); align-items: center; padding: var(--space-4) 0; border-bottom: 1px solid var(--line-strong); text-decoration: none; }
.sf-row.is-plain { grid-template-columns: minmax(0, 1fr) auto; }
.sf-row img { width: 168px; aspect-ratio: 4 / 3; object-fit: cover; background: var(--surface-quiet); }
.sf-row:hover .h-card-name { text-decoration: underline; text-underline-offset: 3px; }
.sf-row .h-card-meta { margin-top: 4px; font-size: 14px; }

/* ---- A listing as a card (1 Nov 2026): picture first, its state on it, then the facts. Tokens only. ---- */
.sf-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: var(--space-6) var(--space-5); }
.sf-section:not(.is-wide) .sf-cards { grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); }
.sf-card { display: flex; flex-direction: column; text-decoration: none; color: var(--ink); background: var(--surface); border: 1px solid var(--line); transition: border-color .15s, transform .2s; }
.sf-card:hover { border-color: var(--ink); }
.sf-card[hidden] { display: none; }
.sf-card:hover .sf-card-name { text-decoration: underline; text-underline-offset: 3px; }
.sf-card-photo { position: relative; display: block; aspect-ratio: 4 / 3; overflow: hidden; background: var(--surface-quiet); }
.sf-card-photo img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.sf-card:hover .sf-card-photo img { transform: scale(1.03); }
.sf-card-street { position: absolute; inset: 0; display: flex; flex-direction: column; justify-content: flex-end; align-items: flex-start; gap: var(--space-3); padding: var(--space-5); background: var(--surface-quiet); color: var(--accent); }
.sf-card-street .h-logo { position: absolute; top: var(--space-4); right: var(--space-4); height: 22px; opacity: .55; }
.sf-card-street em { font-family: var(--face-title); font-size: clamp(1.7rem, 2.4vw, 2.1rem); line-height: 1.05; color: var(--accent); }
.sf-badge { position: absolute; top: var(--space-3); left: var(--space-3); padding: 5px 10px; background: var(--surface); color: var(--ink); font: 600 12px/1 var(--face-ui); border-radius: var(--radius-sm); }
.sf-card.is-gone .sf-badge { background: var(--ink); color: var(--surface); }
.sf-card.is-gone .sf-card-photo img { filter: grayscale(.6); }
.sf-card-body { display: flex; flex-direction: column; gap: 6px; padding: var(--space-4) var(--space-4) var(--space-5); }
.sf-card-area { font: 500 11px/1.4 var(--face-label); letter-spacing: .08em; text-transform: uppercase; color: var(--muted); }
.sf-card-name { font: 600 18px/1.25 var(--face-ui); letter-spacing: -.015em; margin: 0; }
.sf-card-what, .sf-card-mrt { font-size: 14px; color: var(--muted); }
.sf-card-price { margin-top: 4px; font-size: 14px; color: var(--muted); }
.sf-card-price b { font-family: var(--face-title); font-weight: 400; font-size: 1.6rem; color: var(--ink); letter-spacing: -.01em; font-variant-numeric: lining-nums; margin-right: 2px; }
.sf-card-price small { display: block; font-size: 13px; }
.sf-card-use { align-self: flex-start; margin-top: 4px; padding: 4px 8px; font-size: 12.5px; font-weight: 500; color: var(--accent); background: var(--surface-quiet); border-radius: var(--radius-sm); }
.sf-filter { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--space-3) var(--space-6); margin-bottom: var(--space-6); }
.sf-chips { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.sf-chip { font: 500 14px/1 var(--face-ui); color: var(--ink); background: transparent; border: 1px solid var(--line-strong); border-radius: 999px; padding: 9px 14px; cursor: pointer; min-height: 38px; }
.sf-chip span { color: var(--muted); margin-left: 4px; }
.sf-chip[aria-pressed="true"] { background: var(--ink); color: var(--surface); border-color: var(--ink); }
.sf-chip[aria-pressed="true"] span { color: inherit; opacity: .75; }
.sf-sort { display: flex; align-items: center; gap: var(--space-2); font-size: 14px; color: var(--muted); }
.sf-sort select { font: 500 14px/1 var(--face-ui); color: var(--ink); background: var(--surface); border: 1px solid var(--line-strong); border-radius: var(--radius-sm); padding: 8px 10px; min-height: 38px; }
.sf-filter-count { width: 100%; font-size: 13px; color: var(--muted); min-height: 1.2em; }

/* ---- Lists of streets and areas ---- */
.sf-links { list-style: none; padding: 0; columns: 3 230px; column-gap: var(--space-8); border-top: 1.5px solid var(--ink); padding-top: var(--space-2); }
.sf-links li { break-inside: avoid; display: flex; justify-content: space-between; gap: var(--space-3); padding: 7px 0; border-bottom: 1px solid var(--line-strong); font-size: 15px; }
.sf-links span { color: var(--muted); font-variant-numeric: tabular-nums; }
.sf-links a { text-decoration: none; }
.sf-links a:hover { text-decoration: underline; }
.sf-neighbours { display: flex; justify-content: space-between; gap: var(--space-4); margin-top: var(--space-5); font-size: 14px; }

/* ---- Questions ---- */
.sf-faq { border-top: 1.5px solid var(--ink); }
.sf-faq > div { padding: var(--space-4) 0 var(--space-5); border-bottom: 1px solid var(--line-strong); }
.sf-faq h3 { font: 600 17px/1.3 var(--face-ui); letter-spacing: -.015em; }
.sf-faq p { margin-top: 6px; max-width: 74ch; }

/* ---- Photographs and the walkthrough ---- */
.sf-gallery { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-2); }
.sf-gallery a { display: block; aspect-ratio: 4 / 3; overflow: hidden; background: var(--surface-quiet); }
.sf-gallery img { width: 100%; height: 100%; object-fit: cover; }
.sf-gallery picture, a.sf-arch picture { display: contents; }
.sf-video video { width: 100%; max-height: 640px; background: var(--rail); }

/* ---- The closing band and the foot, on Deep Shutter ---- */
.sf-night { background: var(--ground); color: var(--ink); }
.sf-contact { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: var(--space-8); align-items: end; padding-block: var(--space-10) var(--space-9); }
.sf-contact .h-lede { max-width: 46ch; }
.sf-agent { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-3); }
.sf-agent b { font: 600 17px/1.25 var(--face-ui); letter-spacing: -.015em; }
.sf-agent .sf-phone { font-family: var(--face-title); font-size: 1.9rem; line-height: 1; font-variant-numeric: lining-nums; text-decoration: none; }
.sf-cea { font-size: 13px; line-height: 1.55; color: var(--muted); }
.sf-foot { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: var(--space-6) var(--space-8); align-items: start; padding-block: var(--space-8) var(--space-9); border-top: 1px solid var(--line-strong); }
.sf-foot .h-logo { height: 62px; }
.sf-foot .sf-nav { gap: 0 var(--space-5); }
.sf-foot .h-signoff { grid-column: 1 / -1; }
.sf-foot .h-signoff a { color: inherit; }

/* ---- The photograph viewer ---- */
dialog#lightbox { border: 0; padding: 64px var(--space-8) 76px; width: 96vw; height: 94svh; max-width: 1600px; max-height: 100svh; border-radius: var(--radius-lg); background: var(--ground); color: var(--ink); overscroll-behavior: contain; }
dialog#lightbox::backdrop { background: var(--rail); opacity: .86; }
dialog#lightbox img { width: 100%; height: 100%; object-fit: contain; }
.sf-lightbox-top { position: absolute; top: var(--space-4); left: var(--space-6); right: var(--space-6); display: flex; align-items: center; justify-content: space-between; font-size: 13px; }
.sf-lightbox-controls { position: absolute; bottom: var(--space-4); left: 0; right: 0; display: flex; justify-content: center; gap: var(--space-3); }

/* ---- The directory: search and maps (1 Nov 2026). Tokens only. ---- */
.sf-search { position: relative; width: 100%; max-width: 560px; margin-top: var(--space-4); }
.sf-search-label { display: block; font: 500 11px/1.5 var(--face-label); letter-spacing: .08em; text-transform: uppercase; color: var(--muted); margin-bottom: var(--space-2); }
.sf-search-field { position: relative; display: flex; gap: var(--space-2); }
.sf-search input { flex: 1; min-width: 0; min-height: 48px; padding: 0 var(--space-4); font: 400 16px/1 var(--face-ui); color: var(--ink); background: var(--surface); border: 1.5px solid var(--ink); border-radius: var(--radius-sm, 0); }
.sf-search input:focus { outline: 2px solid var(--accent); outline-offset: 2px; }
.sf-search .h-btn { min-height: 48px; }
.sf-results { position: absolute; z-index: 1000; left: 0; right: 0; top: 100%; list-style: none; margin: 4px 0 0; padding: 0; background: var(--surface); border: 1.5px solid var(--ink); box-shadow: var(--shadow-float, none); max-height: 60vh; overflow: auto; }
.sf-results a { display: flex; flex-direction: column; gap: 2px; padding: var(--space-3) var(--space-4); text-decoration: none; border-bottom: 1px solid var(--line); }
.sf-results li:last-child a { border-bottom: 0; }
.sf-results b { font: 600 15px/1.3 var(--face-ui); }
.sf-results span { font-size: 13px; color: var(--muted); }
.sf-results a:hover, .sf-results [aria-selected="true"] a { background: var(--surface-quiet); }
.sf-results a.is-listed b { color: var(--rust-text); }
.sf-search-status { min-height: 1.4em; margin-top: var(--space-2); font-size: 13px; color: var(--muted); }

.sf-mapfig { margin: 0; }
.sf-map { position: relative; height: clamp(320px, 56vh, 560px); background: var(--surface-quiet); border: 1px solid var(--line-strong); display: flex; align-items: center; justify-content: center; }
.sf-map.is-address { height: clamp(280px, 44vh, 420px); }
.sf-map.is-live { display: block; }
.sf-map-wait { max-width: 46ch; padding: var(--space-5); text-align: center; color: var(--muted); font-size: 14px; }
.sf-map.is-failed .sf-map-wait::after { content: ' The map could not load.'; }
.sf-mapfig figcaption { display: flex; flex-wrap: wrap; justify-content: space-between; gap: var(--space-2) var(--space-6); margin-top: var(--space-3); }
.sf-mapfig .sf-source { margin-top: 0; }
.sf-legend { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-1) var(--space-4); font-size: 13px; }
.sf-legend i { display: inline-block; width: 10px; height: 10px; border-radius: 50%; margin-right: -8px; vertical-align: middle; }
.sf-legend .is-own { background: var(--accent); }
.sf-legend .is-other { background: var(--muted); opacity: .45; }
.sf-legend .is-listed { background: var(--rust); }
.sf-legend .is-here { background: transparent; box-shadow: inset 0 0 0 3px var(--rust); width: 14px; height: 14px; }
.sf-map .leaflet-container, .sf-map.leaflet-container { font: 400 14px/1.4 var(--face-ui); background: var(--surface-quiet); }
.sf-map .leaflet-popup-content-wrapper, .sf-map .leaflet-popup-tip { border-radius: 0; background: var(--surface); color: var(--ink); box-shadow: var(--shadow-float, none); }
.sf-map .leaflet-popup-content { margin: var(--space-3) var(--space-4); display: flex; flex-direction: column; gap: 4px; }
.sf-map .leaflet-popup-content a:first-child { font-weight: 600; }
.sf-map .leaflet-popup-content p { margin: 0; color: var(--muted); font-size: 13px; }
.sf-map .leaflet-control-zoom a { border-radius: 0 !important; color: var(--ink); }
.sf-owner-cta { margin-top: var(--space-5); }

/* A phone: the five menu words on one line, not four and a stray "About". */
@media (max-width: 480px) {
  .sf-top .sf-nav { gap: 0 var(--space-4); }
  .sf-top .sf-nav a { letter-spacing: .03em; }
}
@media (max-width: 820px) {
  .sf-wrap { padding-inline: var(--space-5); }
  .sf-top .h-logo { height: 42px; }
  .sf-nav { gap: 0 var(--space-5); }
  .sf-hero { padding-block: var(--space-7) var(--space-8); }
  .sf-hero.h-hero, .sf-section, .sf-contact, .sf-foot { grid-template-columns: minmax(0, 1fr); }
  .sf-section { padding-block: var(--space-8); gap: var(--space-5); }
  .sf-facts { grid-template-columns: minmax(0, 1fr); }
  .sf-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sf-row { grid-template-columns: 104px minmax(0, 1fr); gap: var(--space-4); }
  .sf-row img { width: 104px; }
  .sf-row > .h-chip { grid-column: 2; }
  .sf-row.is-plain { grid-template-columns: minmax(0, 1fr); }
  .sf-row.is-plain > .h-chip { grid-column: 1; }
  .sf-map { height: 62vh; }
  .sf-contact { padding-block: var(--space-9) var(--space-8); }
  .h-band { padding: var(--space-6) var(--space-5); gap: var(--space-5) var(--space-8); }
  dialog#lightbox { width: 100vw; height: 100svh; max-width: 100vw; border-radius: var(--radius-none); padding: 64px var(--space-3) 76px; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } * { transition: none !important; } }
