@font-face{font-family:Cormorant Garamond;src:url(/fonts/CormorantGaramond-SemiBold.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/Inter-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/Inter-Medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/Inter-SemiBold.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}:root{--espresso:#3a2e28;--limestone:#ebe2d4;--paper:#faf7f1;--gold:#ae8a55;--terracotta:#b96a4b;--ink-60:rgba(58,46,40,0.6);--ink-30:rgba(58,46,40,0.3);--ink-12:rgba(58,46,40,0.12);--font-display:"Cormorant Garamond",Georgia,serif;--font-body:"Inter",system-ui,sans-serif;--track-label:0.34em;--track-btn:0.08em;--radius:4px;--space:8px;--header-h:56px;--content-max:1200px;--pad:20px;--ratio-gallery:3/2;--ratio-feed:4/5;color-scheme:light}@media (min-width:1024px){:root{--header-h:64px;--pad:40px}}*,:after,:before{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--paper);color:var(--espresso);font-family:var(--font-body);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}@media (min-width:1024px){body{font-size:16px}}.display,h1,h2,h3{font-family:var(--font-display);font-weight:600;line-height:1.1;margin:0}h1{font-size:28px}@media (min-width:1024px){h1{font-size:40px}}h2{font-size:22px}@media (min-width:1024px){h2{font-size:28px}}p{margin:0 0 12px}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}hr{border:0;border-top:1px solid var(--limestone);margin:24px 0}.label{font:600 11px/1 var(--font-body);letter-spacing:var(--track-label);text-transform:uppercase}@media (min-width:1024px){.label{font-size:12px}}.label-muted{color:var(--ink-60)}.num{font-weight:500;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.secondary-ccy{font-size:12px;color:var(--ink-60);font-weight:400}@media (min-width:1024px){.secondary-ccy{font-size:13px}}.muted{color:var(--ink-60)}.small{font-size:13px}.tiny{font-size:12px}.gold-rule{border:0;border-top:1px solid var(--gold);margin:16px 0}.shell{min-height:100dvh;display:flex;flex-direction:column}.container{max-width:var(--content-max);margin:0 auto;padding:0 var(--pad);width:100%}.site-header{height:var(--header-h);border-bottom:1px solid var(--limestone);display:flex;align-items:center;position:-webkit-sticky;position:sticky;top:0;background:var(--paper);z-index:20}.site-header .container{gap:24px}.brand,.site-header .container{display:flex;align-items:center}.brand{gap:10px}.brand img{height:36px;width:auto}@media (min-width:1024px){.brand img{height:42px}}.nav{display:flex;gap:18px;margin-left:auto;align-items:center}.nav a{font:600 11px/1 var(--font-body);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--ink-60);padding:6px 0}.nav a.active,.nav a:hover{color:var(--espresso);box-shadow:inset 0 -1px 0 var(--gold)}main{flex:1 1;padding:32px 0 64px}.site-footer{border-top:1px solid var(--limestone);padding:20px 0;color:var(--ink-60);font-size:12px}.btn{height:44px;padding:0 20px;border-radius:var(--radius);font:600 13px var(--font-body);letter-spacing:var(--track-btn);text-transform:uppercase;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;border:1px solid transparent;transition:opacity .12s ease}.btn:hover{opacity:.86}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:var(--espresso);color:var(--paper)}.btn-secondary{background:transparent;color:var(--espresso);border-color:var(--espresso)}.btn-small{height:34px;padding:0 12px;font-size:11px}input,select,textarea{font-family:var(--font-body);font-size:15px;color:var(--espresso);background:var(--paper);border:1px solid var(--ink-30);border-radius:var(--radius);padding:10px 12px;width:100%}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 1px var(--gold)}label{display:block;margin-bottom:6px}.field{margin-bottom:16px}.chip{background:var(--limestone);color:var(--espresso);padding:6px 10px;border-radius:var(--radius);font-size:13px;display:inline-flex;align-items:center;gap:6px}.chip.active{box-shadow:inset 0 -1px 0 var(--gold)}.chip-row{display:flex;flex-wrap:wrap;gap:8px}.badge{display:inline-block;border:1px solid var(--gold);color:var(--gold);padding:3px 8px;border-radius:var(--radius);font:600 10px/1.4 var(--font-body);letter-spacing:var(--track-btn);text-transform:uppercase}.card{border:1px solid var(--limestone);background:var(--paper);overflow:hidden}.card,.panel{border-radius:var(--radius)}.panel{background:var(--limestone);padding:16px}.stack{display:flex;flex-direction:column;gap:24px}.row{align-items:center;flex-wrap:wrap}.row,.spread{display:flex;gap:12px}.spread{justify-content:space-between;align-items:baseline}.gallery img{aspect-ratio:var(--ratio-gallery)}.feed img,.gallery img{object-fit:cover;width:100%}.feed img{aspect-ratio:var(--ratio-feed)}.placeholder-cover{aspect-ratio:var(--ratio-gallery);background:var(--espresso);color:var(--paper);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;padding:24px}.facts{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:1px;gap:1px;background:var(--ink-12);border:1px solid var(--ink-12);border-radius:var(--radius);overflow:hidden}@media (min-width:768px){.facts{grid-template-columns:repeat(4,1fr)}}.fact{background:var(--limestone);padding:14px 16px}.fact .value{font-size:18px;font-weight:500;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.table-wrap{overflow-x:auto;border:1px solid var(--limestone);border-radius:var(--radius)}table{border-collapse:collapse;width:100%;font-size:14px}thead th{text-align:left;font:600 11px/1 var(--font-body);letter-spacing:var(--track-label);text-transform:uppercase;padding:12px 10px;border-bottom:1px solid var(--limestone);color:var(--ink-60)}tbody td,thead th{white-space:nowrap}tbody td{padding:10px;border-bottom:1px solid var(--ink-12)}tbody tr:nth-child(2n){background:color-mix(in srgb,var(--limestone) 45%,transparent)}tbody tr:last-child td{border-bottom:0}td.num,th.num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.status-available{color:var(--gold)}.status-on_hold{color:var(--terracotta)}.status-sold{color:var(--ink-60)}.status-dot:before{content:"●";margin-right:6px;font-size:9px;vertical-align:middle}.plan-bar{display:flex;height:12px;border-radius:2px;overflow:hidden;border:1px solid var(--ink-12)}.plan-bar span{display:block;height:100%}.seg-down{background:var(--espresso)}.seg-construction{background:var(--gold)}.seg-handover{background:var(--terracotta)}.seg-post_handover{background:var(--limestone);box-shadow:inset 0 0 0 1px var(--espresso)}.plan-legend{display:flex;flex-wrap:wrap;gap:16px;margin-top:10px;font-size:13px}.plan-legend .key{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:6px}.search-layout{display:grid;grid-template-columns:1fr;grid-gap:32px;gap:32px}@media (min-width:1024px){.search-layout{grid-template-columns:320px 1fr;align-items:start}}.filter-panel{border:1px solid var(--limestone);border-radius:var(--radius);padding:16px}@media (min-width:1024px){.filter-panel{position:-webkit-sticky;position:sticky;top:calc(var(--header-h) + 16px);max-height:calc(100vh - var(--header-h) - 32px);overflow-y:auto;overscroll-behavior:contain}}.filter-group{border-top:1px solid var(--limestone);padding-top:14px;margin-top:14px}.filter-group:first-of-type{border-top:0;margin-top:0;padding-top:0}.checkbox-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:6px;gap:6px}.check,.checkbox-grid label{display:flex;align-items:center;gap:8px;font-size:14px;margin:0;cursor:pointer}.check input,.checkbox-grid input[type=checkbox]{width:auto}.two-col{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.project-card{overflow:hidden}.launch-card,.project-card{border:1px solid var(--limestone);border-radius:var(--radius)}.launch-card{border-left:3px solid var(--gold,currentColor);padding:16px}.project-card .cover{aspect-ratio:var(--ratio-gallery);object-fit:cover;width:100%}.metrics{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:12px;gap:12px;margin-top:12px}@media (min-width:640px){.metrics{grid-template-columns:repeat(4,1fr)}}details>summary{cursor:pointer;list-style:none}details>summary::-webkit-details-marker{display:none}.grid-2{display:grid;grid-template-columns:1fr;grid-gap:24px;gap:24px}@media (min-width:900px){.grid-2{grid-template-columns:1fr 1fr}}.grid-3{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:16px;gap:16px}.notice{border:1px solid var(--gold);border-radius:var(--radius);padding:12px 14px;font-size:14px}.notice-error{border-color:var(--terracotta);color:var(--terracotta)}.login-page{min-height:100dvh;display:grid;place-items:center;padding:24px}.login-card{width:100%;max-width:380px}.login-mark{display:block;width:210px;height:auto;margin:0 auto 56px}@media (min-width:768px){.login-mark{width:280px;margin-bottom:64px}}.tabs{display:flex;gap:20px;border-bottom:1px solid var(--limestone);margin-bottom:20px}.tabs a{padding:10px 0;font:600 11px/1 var(--font-body);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--ink-60)}.tabs a.active{color:var(--espresso);box-shadow:inset 0 -1px 0 var(--gold)}.fp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:16px;gap:16px}.fp-grid figure{margin:0;border:1px solid var(--limestone);border-radius:var(--radius);padding:8px}.fp-grid img{background:#fff}.fp-grid figcaption{font-size:12px;color:var(--ink-60);margin-top:6px}.nav-count{display:inline-block;min-width:18px;margin-left:6px;padding:1px 5px;border:1px solid var(--gold);border-radius:9px;font:600 10px/1.4 var(--font-body);letter-spacing:0;text-align:center;color:var(--gold)}.badge-warn{border-color:var(--terracotta);color:var(--terracotta)}.module-grid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:1fr}@media (min-width:640px){.module-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.module-grid{grid-template-columns:repeat(4,1fr)}}.module-card{display:flex;flex-direction:column;border:1px solid var(--limestone);border-radius:var(--radius);padding:20px;background:var(--paper);min-height:210px}.module-card:hover{border-color:var(--gold)}.progress{height:3px;background:var(--limestone);border-radius:2px;overflow:hidden}.progress i{display:block;height:100%;background:var(--gold)}.lesson-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--limestone)}.lesson-list li{border-bottom:1px solid var(--limestone)}.lesson-list a{display:flex;gap:14px;align-items:flex-start;padding:14px 4px}.lesson-list a:hover{background:var(--limestone)}.lesson-list .spread{gap:12px}.lesson-check{width:20px;height:20px;flex:none;border:1px solid var(--ink-30);border-radius:50%;display:grid;place-items:center;font-size:11px;color:var(--gold);margin-top:2px}.pdf-frame{width:100%;height:min(76vh,900px);border:1px solid var(--limestone);border-radius:var(--radius);background:var(--limestone)}.option{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--ink-30);border-radius:var(--radius);padding:14px 16px;cursor:pointer;font-size:15px}.option:hover{border-color:var(--espresso)}.option.chosen{border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold)}.option input{width:18px;height:18px;accent-color:var(--espresso);margin-top:2px;flex:none}.answer-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:6px;gap:6px;font-size:14px}.answer-list li{padding:8px 10px;border-radius:var(--radius);background:var(--paper);border:1px solid var(--limestone)}.answer-list li.is-correct{border-color:var(--gold);color:var(--espresso)}.answer-list li.is-wrong{border-color:var(--terracotta);color:var(--terracotta)}.calc-grid{display:grid;grid-gap:24px;gap:24px;grid-template-columns:1fr}@media (min-width:720px){.calc-grid{grid-template-columns:1fr 1fr}}.calc-results{display:grid;grid-gap:16px;gap:16px;align-content:start}.calc-value{font-family:var(--font-display);font-size:44px;line-height:1.05;margin:6px 0 2px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.calc-value.gold{color:var(--gold)}.calc input{background:var(--paper)}.mortgage-cells{grid-template-columns:1fr 1fr}.calc-value.small-value{font-size:26px}.mortgage-rows{margin-top:16px;font-size:13px}.mortgage-rows>div{display:flex;justify-content:space-between;gap:12px;padding:5px 0;border-top:1px solid var(--ink-12)}.mortgage-rows>div.head{margin-top:8px}.mortgage-rows b{font-weight:500;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}