@font-face{font-family:Market;src:url('/assets/market-font.ttf') format('truetype');font-display:swap}
.market-page{--bg:#161310;--panel:#211c17;--ink:#f4eee7;--soft:#b6aa9c;--accent:#f36f21;--line:#494039;background:var(--bg);color:var(--ink);font:15px/1.65 Market,Arial,sans-serif;margin:0}
.market-page *{box-sizing:border-box}.market-page [hidden]{display:none!important}.market-page p{text-align:justify;hyphens:auto}.market-page a{color:inherit}.market-page .wrap{width:min(1440px,calc(100% - 100px));margin:auto}.market-page h1,.market-page h2,.market-page h3{font-family:Georgia,serif;font-weight:400}.market-page h1{font-size:clamp(70px,10vw,155px);line-height:.9;letter-spacing:-.06em;margin:30px 0;max-width:1000px}.market-page h2{font-size:clamp(42px,5vw,74px);line-height:1.04;letter-spacing:-.04em;margin:12px 0 24px}.market-page h3{font-size:29px;line-height:1.16;margin:0 0 15px}.market-page em{font-style:normal;color:var(--accent)}.market-page .hero{min-height:680px;padding:90px 0 65px;background:linear-gradient(90deg,#161310e8,#1613108a),url('/assets/hcmc-dusk-nam-ng.jpg') center/cover;display:flex;align-items:end}.market-page .hero p{max-width:650px;font-size:19px}.market-page .eyebrow{font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--accent)}.market-page .release{font-size:12px;color:var(--soft);margin-top:24px}.market-page .toolbar{position:sticky;top:var(--project-nav-height,120px);z-index:15;background:#211c17f5;border-block:1px solid var(--line);padding:16px 0}.market-page .controls{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.market-page label{font-size:12px;color:var(--soft)}.market-page select,.market-page input{background:#2c251f;color:var(--ink);border:1px solid #786b5d;padding:10px 12px;border-radius:2px;font:inherit;max-width:100%}.market-page button,.market-page .button{background:#b94307;color:#fff;border:1px solid #f36f21;padding:12px 20px;font:inherit;cursor:pointer;text-decoration:none;box-shadow:0 0 25px #f36f2120;transition:box-shadow .2s,background .2s}.market-page button:hover,.market-page .button:hover{background:#cb4d09;box-shadow:0 0 35px #f36f2160}.market-page button:focus-visible,.market-page select:focus-visible,.market-page a:focus-visible{outline:2px solid #ffc094;outline-offset:4px}.market-page button:disabled{opacity:.5;cursor:wait}.market-page .tools-end{margin-left:auto}.market-page .metrics{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--line);margin:60px 0 0}.market-page .metric{padding:24px 16px;border-right:1px solid var(--line)}.market-page .metric:last-child{border:0}.market-page .metric b{font:clamp(40px,5vw,75px)/1.1 Georgia,serif;display:block;color:var(--ink)}.market-page .metric span{color:var(--soft);font-size:12px}.market-page section[data-story]{padding:85px 0;border-bottom:1px solid var(--line);scroll-margin-top:170px}.market-page .section-head{display:grid;grid-template-columns:22% 1fr;gap:28px;margin-bottom:40px}.market-page .section-head p{max-width:720px;color:var(--soft)}.market-page .section-head .eyebrow{padding-top:22px}.market-page .chart-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.market-page .chart-panel{min-width:0;background:var(--panel);padding:28px}.market-page .chart-panel.wide{grid-column:1/-1}.market-page .chart-panel svg{width:100%;height:auto;display:block}.market-page .chart-panel p{font-size:12px;color:var(--soft);margin:18px 0 0}.market-page .chart-source{font-size:10px;color:var(--soft);margin-top:12px}.market-page .city-controls{display:flex;gap:20px;align-items:end;flex-wrap:wrap;margin-bottom:25px}.market-page .city-controls select{display:block;margin-top:8px}.market-page .city-summary{font:clamp(22px,3vw,36px)/1.3 Georgia,serif;max-width:950px;margin:30px 0}.market-page .explorer{display:grid;grid-template-columns:.85fr 1.4fr;background:var(--panel);border:1px solid var(--line)}.market-page .pick,.market-page .building-analysis{padding:36px}.market-page .pick{border-right:1px solid var(--line)}.market-page #building{width:100%;margin:20px 0 30px}.market-page #building-name{font-size:clamp(35px,4vw,65px);overflow-wrap:anywhere}.market-page .building-price{font:clamp(60px,7vw,110px)/1 Georgia,serif;letter-spacing:-.06em}.market-page .cost-facts{display:grid;grid-template-columns:1fr 1fr;gap:25px;border-block:1px solid var(--line);padding:25px 0;margin:28px 0}.market-page .cost-facts b{font:26px Georgia,serif;color:var(--ink);display:block;margin-top:8px}.market-page .cost-facts small{color:var(--soft)}.market-page #building-reading{font:27px/1.35 Georgia,serif;margin-top:25px}.market-page .method{font-size:12px;color:var(--soft)}.market-page .source-list{display:grid;grid-template-columns:1fr 1fr;gap:15px}.market-page .source-list a{border-top:1px solid var(--line);padding:18px 0;text-decoration:none;display:block;color:var(--soft)}.market-page .request{background:#211c17;padding:45px;display:grid;grid-template-columns:1fr 1fr;gap:60px}.market-page .request form{display:grid;gap:15px}.market-page .request input,.market-page .request textarea{display:block;width:100%;background:#30261e;border:1px solid #786b5d;padding:12px;color:var(--ink);font:inherit}.market-page .request textarea{height:95px}.market-page footer{padding:45px 0 95px;font-size:11px;color:var(--soft)}.market-page #market-status{font-size:12px;color:#ffc094;min-height:20px}.market-page .legend{display:flex;gap:25px;font-size:11px;color:var(--soft);margin-top:15px}.market-page .table-scroll{overflow-x:auto}.market-page table{width:100%;border-collapse:collapse;font-size:12px}.market-page th,.market-page td{padding:12px;border-bottom:1px solid var(--line);text-align:left}.market-page .note-strip{padding:15px 20px;background:#2b241d;border-left:2px solid var(--accent);font-size:12px;color:var(--soft)}
@media(max-width:850px){.market-page .wrap{width:calc(100% - 38px)}.market-page .hero{min-height:600px;padding:65px 0 45px}.market-page h1{font-size:74px}.market-page .section-head,.market-page .chart-grid,.market-page .explorer,.market-page .request,.market-page .source-list{grid-template-columns:1fr}.market-page .section-head{gap:0}.market-page .metrics{grid-template-columns:1fr 1fr}.market-page .metric:nth-child(2){border-right:0}.market-page .metric:nth-child(-n+2){border-bottom:1px solid var(--line)}.market-page .pick{border-right:0;border-bottom:1px solid var(--line)}.market-page .pick,.market-page .building-analysis,.market-page .chart-panel{padding:22px}.market-page section[data-story]{padding:58px 0}.market-page .toolbar{position:static}.market-page .tools-end{margin-left:0}.market-page .request{padding:28px;gap:30px}.market-page .chart-panel svg{min-width:620px}.market-page .plot{overflow-x:auto}.market-page .building-price{font-size:70px}.market-page .cost-facts{gap:15px}.market-page .source-list{gap:0}}
@media(prefers-reduced-motion:reduce){.market-page *{scroll-behavior:auto!important;transition:none!important}}
.market-management{margin:50px 0;padding:30px;border:1px solid #59493d;background:#211c17;color:#f4eee7}.market-management h2,.market-management h3{color:#f4eee7}.market-management p{color:#c5b8ab;text-align:justify}.market-management .data-actions{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:20px 0}.market-management button,.market-management .file-label{background:#b94307;color:white;padding:12px 16px;border:1px solid #f36f21;cursor:pointer;font:inherit}.market-management input,.market-management select,.market-management textarea{background:#30271f;color:#fff;border:1px solid #84715f;padding:10px;max-width:100%}.market-management label{display:grid;gap:8px}.market-management .file-label input{max-width:280px}.market-management textarea{width:100%}.market-management pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:320px;overflow:auto;background:#161310;padding:18px;font-size:12px}.market-management article{border-top:1px solid #59493d;padding:20px 0}.market-management [hidden]{display:none!important}.market-management #data-status{color:#ffc094}.market-management button:disabled{opacity:.5}.market-management button:focus-visible,.market-management input:focus-visible{outline:2px solid #ffc094;outline-offset:3px}
.market-page .demand-reading{border-left:2px solid #f36f21;padding:24px 28px;margin:30px 0;background:#211c17}.market-page .demand-reading p{max-width:950px;color:#c5b8ab}

.market-page .skip-link{position:absolute;left:16px;top:-100px;z-index:100;background:#211c17;padding:12px}.market-page .skip-link:focus{top:85px}.market-page .toolbar{top:76px}.market-page section[data-story]{scroll-margin-top:210px}
