:root{--ink: #12303A;--ink-2: #3D5560;--ink-3: #5B6F77;--paper: #F6F7F5;--surface: #FFFFFF;--sand: #EFEBE3;--line: #D9DFDF;--line-strong: #B8C3C5;--primary: #0B5F6B;--primary-hover: #084C56;--primary-soft: #E3F0F0;--accent: #F2A97E;--success: #1E6B43;--warn: #8A5A00;--warn-soft: #FFF2D6;--danger: #A8322A;--danger-soft: #FCE9E7;--focus: #0B5F6B;--shadow: 0 1px 2px rgb(18 48 58 / 6%), 0 4px 16px rgb(18 48 58 / 6%);--radius-control: 12px;--radius-card: 16px;--radius-large: 20px;--gutter: 16px;--max: 1200px;--ease: cubic-bezier(.2, .7, .2, 1);--font: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;color-scheme:light}:root[data-theme=dark]{--ink: #E7EEF0;--ink-2: #C3D0D4;--ink-3: #9DB0B6;--paper: #0D1A1F;--surface: #14252C;--sand: #1A2D35;--line: #27404A;--line-strong: #3B5864;--primary: #5CC3CC;--primary-hover: #7FD3DA;--primary-soft: #18363E;--success: #6FCF97;--warn: #F2C46D;--warn-soft: #3A2E12;--danger: #FF8A80;--danger-soft: #3A1C1A;--focus: #7FD3DA;--shadow: 0 1px 2px rgb(0 0 0 / 30%), 0 4px 16px rgb(0 0 0 / 25%);color-scheme:dark}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--ink: #E7EEF0;--ink-2: #C3D0D4;--ink-3: #9DB0B6;--paper: #0D1A1F;--surface: #14252C;--sand: #1A2D35;--line: #27404A;--line-strong: #3B5864;--primary: #5CC3CC;--primary-hover: #7FD3DA;--primary-soft: #18363E;--success: #6FCF97;--warn: #F2C46D;--warn-soft: #3A2E12;--danger: #FF8A80;--danger-soft: #3A1C1A;--focus: #7FD3DA;--shadow: 0 1px 2px rgb(0 0 0 / 30%), 0 4px 16px rgb(0 0 0 / 25%);color-scheme:dark}}:root{--on-primary: #FFFFFF}:root[data-theme=dark]{--on-primary: #08262C}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--on-primary: #08262C}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.55 var(--font);-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:var(--primary);text-underline-offset:3px}a:hover{color:var(--primary-hover)}h1,h2,h3{line-height:1.15;margin:0;letter-spacing:-.015em;font-weight:700}h1{font-size:clamp(28px,6vw,44px)}h2{font-size:clamp(22px,4vw,28px)}h3{font-size:18px}p{margin:0}:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:6px}.icon{flex:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.muted{color:var(--ink-3)}.wrap{width:100%;max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}@media(min-width:768px){:root{--gutter: 24px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}.skip{position:absolute;left:8px;top:-60px;z-index:10;background:var(--surface);padding:10px 14px;border-radius:8px}.skip:focus{top:8px}.site-header{background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}.site-header .wrap{display:flex;align-items:center;gap:8px;min-height:60px}.brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;font-weight:700;font-size:17px;min-height:44px;margin-right:auto}.brand:hover{color:var(--ink)}.brand svg{width:32px;height:32px;flex:none}.brand span{white-space:nowrap}@media(max-width:420px){.site-header .wrap{gap:4px}.brand{font-size:15px;gap:8px}.nav a{padding:0 10px}}.nav{display:flex;gap:2px}.nav a{display:inline-flex;align-items:center;min-height:44px;padding:0 12px;border-radius:10px;color:var(--ink-2);text-decoration:none;font-weight:600;font-size:15px}.nav a:hover{background:var(--primary-soft);color:var(--ink)}.nav a[aria-current=page]{color:var(--primary);background:var(--primary-soft)}.icon-btn{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:12px;border:0;background:transparent;color:var(--ink-2);cursor:pointer}.icon-btn:hover{background:var(--primary-soft);color:var(--ink)}.site-footer{margin-top:64px;border-top:1px solid var(--line);background:var(--surface);padding:28px 0 36px;font-size:14px;color:var(--ink-3)}.site-footer .wrap{display:flex;flex-wrap:wrap;gap:8px 20px;align-items:center;justify-content:space-between}.site-footer a{color:var(--ink-2);display:inline-flex;align-items:center;min-height:44px}main{display:block;min-height:60vh}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 20px;border-radius:var(--radius-control);border:1px solid transparent;font:600 16px/1 var(--font);cursor:pointer;text-decoration:none;transition:background .16s var(--ease),border-color .16s var(--ease)}.btn-primary{background:var(--primary);color:var(--on-primary)}.btn-primary:hover{background:var(--primary-hover);color:var(--on-primary)}.btn-secondary{background:var(--surface);color:var(--ink);border-color:var(--line-strong)}.btn-secondary:hover{border-color:var(--primary);color:var(--ink)}.btn-ghost{background:transparent;color:var(--primary);padding:0 12px}.btn-ghost:hover{background:var(--primary-soft)}.btn-danger{background:var(--surface);color:var(--danger);border-color:var(--line-strong)}.btn-small{min-height:44px;padding:0 14px;font-size:15px}.btn-block{width:100%}.btn[disabled]{opacity:.55;cursor:not-allowed}.field{display:grid;gap:6px;min-width:0}.field>label,.field>.label{font-size:14px;font-weight:600;color:var(--ink-2)}.field .hint{font-size:13px;color:var(--ink-3)}.field .error{font-size:14px;color:var(--danger);font-weight:600}.input,.select,.textarea{width:100%;min-height:48px;padding:0 14px;border-radius:var(--radius-control);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font:400 16px/1.3 var(--font)}.textarea{padding:12px 14px;min-height:120px;resize:vertical;line-height:1.5}.select{appearance:none;padding-right:40px;background-image:linear-gradient(45deg,transparent 50%,var(--ink-3) 50%),linear-gradient(135deg,var(--ink-3) 50%,transparent 50%);background-position:calc(100% - 20px) 21px,calc(100% - 15px) 21px;background-size:5px 5px;background-repeat:no-repeat}.input:hover,.select:hover,.textarea:hover{border-color:var(--ink-3)}.input[aria-invalid=true],.textarea[aria-invalid=true],.select[aria-invalid=true]{border-color:var(--danger)}.check{display:flex;align-items:center;gap:10px;min-height:44px;font-size:15px;cursor:pointer}.check input{width:20px;height:20px;accent-color:var(--primary)}.segmented{display:grid;grid-template-columns:1fr 1fr;padding:4px;gap:4px;border-radius:14px;background:var(--sand)}.segmented button{min-height:44px;border:0;border-radius:10px;background:transparent;color:var(--ink-2);font:600 16px/1 var(--font);cursor:pointer}.segmented button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow)}.notice{padding:14px 16px;border-radius:var(--radius-control);background:var(--primary-soft);color:var(--ink);font-size:15px}.notice-error{background:var(--danger-soft);color:var(--danger);font-weight:600}.notice-ok{background:var(--primary-soft)}.hero{background:var(--sand);padding:28px 0 32px}.hero h1{max-width:16ch}.hero .lead{margin-top:10px;color:var(--ink-2);font-size:17px;max-width:48ch}.hero .search{margin-top:20px}@media(min-width:900px){.hero{padding:56px 0}}.section{margin-top:36px}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:14px}.section-head a{font-weight:600;display:inline-flex;align-items:center;min-height:44px}.search{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-large);padding:16px;box-shadow:var(--shadow);display:grid;gap:14px}.search .grid{display:grid;gap:12px;grid-template-columns:1fr 1fr}.search .grid .wide{grid-column:1 / -1}@media(min-width:900px){.search{padding:20px}.search .grid{grid-template-columns:2fr 1.3fr 1fr 1fr .8fr .8fr;align-items:end}.search .grid .wide{grid-column:auto}.search-side .grid{grid-template-columns:1fr 1fr}.search-side .grid .wide{grid-column:1 / -1}}.results-head{padding:20px 0 8px;display:grid;gap:4px}.results-layout{display:grid;gap:20px}@media(min-width:1024px){.results-layout{grid-template-columns:320px 1fr;align-items:start}.results-layout .search{position:sticky;top:80px}}.toolbar{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;justify-content:space-between;margin-bottom:14px}.toolbar .count{font-weight:600}.toolbar .tools{display:flex;gap:8px;align-items:center}.toolbar .select{width:auto;min-width:170px}.filters-toggle{display:flex}@media(min-width:1024px){.filters-toggle{display:none}.search-side[hidden]{display:grid!important}}.chips{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 12px}.chip{display:inline-flex;align-items:center;min-height:32px;padding:0 12px;border-radius:999px;background:var(--primary-soft);color:var(--ink);font-size:14px;font-weight:600}.cards{display:grid;gap:16px;grid-template-columns:1fr}@media(min-width:620px){.cards{grid-template-columns:1fr 1fr}}@media(min-width:1100px){.cards{grid-template-columns:repeat(3,1fr)}.home .cards{grid-template-columns:repeat(4,1fr)}}.card{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .16s var(--ease),transform .16s var(--ease)}.card:hover{box-shadow:var(--shadow)}.card .photo{position:relative;aspect-ratio:3 / 2;background:var(--sand)}.card .photo img{width:100%;height:100%;object-fit:cover}.card .photo .none{display:grid;place-items:center;height:100%;color:var(--ink-3)}.card .badges{position:absolute;left:10px;top:10px;display:flex;gap:6px}.badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:999px;font-size:13px;font-weight:700;background:var(--surface);color:var(--ink)}.badge-warn{background:var(--warn-soft);color:var(--warn)}.badge-muted{background:var(--sand);color:var(--ink-2)}.badge-danger{background:var(--danger-soft);color:var(--danger)}.mail-states{list-style:none;margin:0;padding:0;display:grid;gap:4px}.mail-states li{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.badge-ok{background:var(--primary-soft);color:var(--success)}.card .count{position:absolute;right:10px;bottom:10px;background:#0000009e;color:#fff;border-radius:999px;padding:2px 10px;font-size:13px;display:inline-flex;gap:4px;align-items:center}.card .body{padding:14px 16px 16px;display:grid;gap:4px}.card .price{font-size:20px;font-weight:750;letter-spacing:-.01em}.card .price small{font-size:14px;font-weight:600;color:var(--ink-3)}.card .title{font-size:16px;font-weight:600;color:var(--ink);text-decoration:none}.card .title:after{content:"";position:absolute;inset:0}.card .place{display:flex;align-items:center;gap:4px;color:var(--ink-3);font-size:14px}.facts{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:6px;color:var(--ink-2);font-size:14px}.facts span{display:inline-flex;align-items:center;gap:5px}.empty{text-align:center;padding:40px 20px;background:var(--surface);border:1px dashed var(--line-strong);border-radius:var(--radius-card);display:grid;gap:10px;justify-items:center}.empty .icon{color:var(--ink-3)}.empty p{color:var(--ink-2);max-width:40ch}.pager{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:20px}.skeleton{background:linear-gradient(90deg,var(--sand),var(--line),var(--sand));background-size:200% 100%;animation:shimmer 1.4s infinite linear;border-radius:var(--radius-card)}@keyframes shimmer{to{background-position:-200% 0}}.card-skeleton{height:330px}.detail{padding-top:8px}.crumbs a{display:inline-flex;align-items:center;gap:4px;min-height:44px;font-weight:600;text-decoration:none}.gallery{position:relative;border-radius:var(--radius-large);overflow:hidden;background:var(--sand);margin:0 calc(-1 * var(--gutter))}@media(min-width:768px){.gallery{margin:0}}.gallery-empty{aspect-ratio:3 / 2;max-height:520px;display:grid;place-items:center;color:var(--ink-3)}.strip{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.strip::-webkit-scrollbar{display:none}.slide{flex:0 0 100%;margin:0;scroll-snap-align:start;aspect-ratio:3 / 2;max-height:560px}.slide img{width:100%;height:100%;object-fit:cover}@media(max-width:767px){.gallery{border-radius:0}}.gal-btn{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:999px;border:0;display:grid;place-items:center;background:#ffffffeb;color:#12303a;cursor:pointer;box-shadow:var(--shadow)}.gal-btn[disabled]{opacity:0;pointer-events:none}.gal-btn.prev{left:10px}.gal-btn.next{right:10px}.gal-count{position:absolute;right:10px;bottom:10px;background:#0000009e;color:#fff;border-radius:999px;padding:4px 12px;font-size:14px;font-weight:600}.detail-layout{display:grid;gap:24px;margin-top:20px}@media(min-width:1024px){.detail-layout{grid-template-columns:1fr 380px;align-items:start}.detail-aside{position:sticky;top:80px}}.detail-head{display:grid;gap:8px}.detail-head h1{font-size:clamp(24px,5vw,34px)}.detail-head .place{display:flex;align-items:center;gap:6px;color:var(--ink-2)}.detail-price{font-size:26px;font-weight:750;letter-spacing:-.01em}.keyfacts{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin:20px 0 0}.keyfacts div{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-control);padding:10px 14px}.keyfacts dt{font-size:13px;color:var(--ink-3)}.keyfacts dd{margin:2px 0 0;font-weight:650;display:flex;align-items:center;gap:6px}.detail-section{margin-top:28px;display:grid;gap:12px}.detail-section h2{font-size:20px}.prose{white-space:pre-line;color:var(--ink-2);max-width:65ch}.facilities{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:8px 16px}.facilities li{display:flex;align-items:center;gap:8px;color:var(--ink-2)}.facilities .icon{color:var(--success)}.floorplan{margin:0;display:grid;gap:6px}.floorplan img{background:#fff;border:1px solid var(--line);border-radius:var(--radius-control);width:100%;max-width:640px}.floorplan figcaption{font-size:14px}.map{border-radius:var(--radius-card);overflow:hidden;border:1px solid var(--line);aspect-ratio:16 / 10;max-height:380px;background:var(--sand)}.map iframe{width:100%;height:100%;border:0;display:block}.maplink{display:inline-flex;align-items:center;min-height:44px;font-weight:600}.lister{font-size:15px}.aside-title{font-size:18px;margin-top:4px;scroll-margin-top:80px}.quick{display:grid;gap:8px}.btn-whatsapp{background:#1e7a46;color:#fff}.btn-whatsapp:hover{background:#17633a;color:#fff}.contact-bar{position:fixed;left:0;right:0;bottom:0;z-index:6;display:flex;gap:8px;padding:10px var(--gutter) calc(10px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--line);box-shadow:0 -4px 16px #00000014}.contact-bar .quick{display:flex;gap:8px;flex:2 1 auto}.contact-bar .btn{flex:1 1 auto;padding:0 10px;gap:6px;font-size:15px;white-space:nowrap}.detail{padding-bottom:72px}@media(min-width:1024px){.contact-bar{display:none}.detail{padding-bottom:0}}.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.small{font-size:13px}.sent{display:flex;gap:10px;align-items:flex-start}.sent .icon{color:var(--success);margin-top:2px}.narrow{max-width:440px;margin:0 auto;padding:32px var(--gutter)}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);padding:20px;display:grid;gap:16px}.stack{display:grid;gap:16px}.row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.admin-tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin:8px 0 4px;overflow-x:auto}.admin-tabs a{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;color:var(--ink-2);text-decoration:none;font-weight:600;border-bottom:3px solid transparent;white-space:nowrap}.admin-tabs a[aria-current=page]{color:var(--primary);border-bottom-color:var(--primary)}.admin-filters{display:grid;gap:12px;grid-template-columns:1fr;margin:12px 0}@media(min-width:640px){.admin-filters{grid-template-columns:2fr 1fr;max-width:720px}}.admin-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.admin-item{display:flex;align-items:center;gap:12px;padding:10px 12px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-control);color:var(--ink);text-decoration:none;min-height:64px}a.admin-item:hover{border-color:var(--primary);color:var(--ink)}.admin-item img,.thumb-none{width:72px;height:54px;border-radius:8px;object-fit:cover;flex:none;background:var(--sand);display:grid;place-items:center;color:var(--ink-3)}.admin-item-body{display:grid;gap:2px;min-width:0;flex:1;font-size:14px}.admin-item-title{font-weight:650;font-size:16px;overflow-wrap:anywhere}.admin-form{display:grid;gap:16px;margin-top:12px}.admin-form fieldset{margin:0;min-width:0}.admin-form legend{font-weight:700;font-size:18px;padding:0 6px;margin-left:-6px}.form-grid{display:grid;gap:14px;grid-template-columns:1fr}@media(min-width:640px){.form-grid{grid-template-columns:1fr 1fr}}.checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:0 12px}.photo-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.photo-list li{display:grid;grid-template-columns:88px 1fr;gap:8px 12px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:var(--radius-control)}.photo-list img{width:88px;height:66px;object-fit:cover;border-radius:8px;grid-row:span 2}.photo-actions{display:flex;gap:2px}.photo-actions .icon-btn[disabled]{opacity:.35}@media(min-width:640px){.photo-list li{grid-template-columns:120px 1fr auto}.photo-list img{width:120px;height:80px;grid-row:auto}}.file-btn{position:relative;overflow:hidden}.file-btn input{position:absolute;inset:0;opacity:0;cursor:pointer;font-size:0}.file-btn:focus-within{outline:3px solid var(--focus);outline-offset:2px}.floorplan-thumb{max-width:280px;background:#fff;border:1px solid var(--line);border-radius:8px}.save-bar{position:sticky;bottom:0;z-index:3;background:color-mix(in srgb,var(--paper) 92%,transparent);padding:12px 0;border-top:1px solid var(--line);display:flex;gap:8px}.save-bar .btn{flex:1;max-width:320px}.slots{border:0;padding:0;margin:0;display:grid;gap:10px;min-width:0}.slots legend{font-weight:650;padding:0;margin-bottom:2px}.slot-row{display:grid;grid-template-columns:1.4fr 1fr auto;gap:8px;align-items:end}.slot-row:first-of-type{grid-template-columns:1.4fr 1fr}.radio-row{padding:0 12px;border:1px solid var(--line-strong);border-radius:var(--radius-control);min-height:48px}.radio-row.is-past{opacity:.6}.radio-row:has(input:checked){border-color:var(--primary);background:var(--primary-soft);font-weight:650}.kv{display:grid;gap:8px;margin:0}.kv div{display:grid;grid-template-columns:90px 1fr;gap:8px}.kv dt{color:var(--ink-3)}.kv dd{margin:0;overflow-wrap:anywhere}.kv a{display:inline-flex;min-height:44px;align-items:center}.seg-3{grid-template-columns:repeat(3,1fr);max-width:420px;margin-top:12px}.enquiry-item{gap:8px;padding:14px 16px}.enquiry-item a{display:inline-flex;align-items:center;min-height:44px}.danger-zone{margin-top:28px;border-color:var(--line-strong)}.stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.stat{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-control);padding:12px 14px}.stat b{display:block;font-size:24px}.stat span{font-size:14px;color:var(--ink-3)}
