:root{--ink:#1a1d26;--muted:#6b7280;--line:#e5e7eb;--paper:#f7f8fa;--mist:#eef1f5;--card:#fff;--accent:#0f6a5a;--accent-ink:#0a4f43;--accent-action:color-mix(in srgb, var(--accent) 82%, #06251f);--accent-soft:#e8f3ef;--display:"Fraunces", Georgia, serif;--sans:"Source Sans 3", system-ui, sans-serif;--shadow:0 10px 30px #1a1d2614}*{box-sizing:border-box}html{scroll-behavior:smooth;height:100%}body{font-family:var(--sans);color:var(--ink);background:var(--paper);flex-direction:column;min-height:100dvh;margin:0;line-height:1.5;display:flex}img{max-width:100%;display:block}a{color:var(--accent-ink)}a:hover{text-decoration:underline}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid color-mix(in srgb, var(--accent-action) 55%, white);outline-offset:3px}.skip{z-index:100;background:#fff;padding:.5rem .75rem;position:absolute;top:.5rem;left:-999px}.skip:focus{left:.5rem}.top{z-index:20;border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;box-shadow:0 1px #11182708}.top-inner,.foot-inner,.wrap{width:min(1180px,100% - 2rem);margin-inline:auto}.top-inner{justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 0;display:flex}.brand{color:inherit;align-items:center;gap:.7rem;min-width:0;text-decoration:none;display:flex}.brand-lockup{align-items:baseline;gap:.45rem;min-width:0;display:inline-flex}.brand-name{font-family:var(--display);letter-spacing:-.035em;color:var(--ink);font-optical-sizing:auto;font-size:1.28rem;font-weight:700;line-height:1}.brand-badge{background:var(--accent);color:#f4f7f6;font-family:var(--display);letter-spacing:.02em;border-radius:999px;align-items:center;padding:.18rem .45rem .2rem;font-size:.72rem;font-weight:700;line-height:1;display:inline-flex;transform:translateY(-1px)}.brand-mark{object-fit:cover;width:2.5rem;height:2.5rem;box-shadow:0 4px 14px color-mix(in srgb, var(--accent) 28%, transparent);border-radius:12px;flex-shrink:0}.foot-logo{margin-bottom:.45rem}.foot-logo .brand-mark{width:2.25rem;height:2.25rem}.foot-logo .brand-name{color:#fff}.foot-logo .brand-badge{background:color-mix(in srgb, var(--accent) 70%, white);color:var(--accent-ink)}.top nav{flex-wrap:wrap;flex:1;justify-content:center;gap:.15rem;display:flex}.top nav a{color:var(--ink);border-radius:8px;align-items:center;min-height:44px;padding:.45rem .75rem;font-size:.95rem;font-weight:650;text-decoration:none;display:inline-flex}.top nav a:hover{color:var(--accent-ink);background:var(--accent-soft);text-decoration:none}.top-actions{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.btn-outline{color:var(--ink);border:1px solid var(--line);background:0 0;border-radius:8px;align-items:center;min-height:44px;padding:.65rem .95rem;font-weight:700;text-decoration:none;display:inline-flex}.btn-outline:hover{border-color:var(--accent);color:var(--accent-ink);text-decoration:none}main{flex:1 0 auto;width:100%;max-width:none;margin:0;padding:0 0 3rem;display:block}.hero{background:linear-gradient(180deg, transparent 20%, #0a1814b8 100%), linear-gradient(135deg, color-mix(in srgb, var(--accent) 55%, #0b1f1a), #1a3d34);color:#fff;align-items:end;width:100%;min-height:min(72vh,620px);margin-bottom:2.5rem;display:grid;position:relative;overflow:hidden}.hero-media{object-fit:cover;opacity:.45;width:100%;height:100%;position:absolute;inset:0}.hero-copy{z-index:1;width:100%;max-width:1120px;margin:0 auto;padding:4rem 1rem 2.75rem;position:relative}.hero h1{font-family:var(--display);letter-spacing:-.03em;max-width:14ch;margin:0 0 .75rem;font-size:clamp(2.4rem,6vw,4.2rem);line-height:1.05}.hero p{color:#ffffffe0;max-width:36rem;margin:0 0 1.25rem;font-size:1.1rem}.cta-row{flex-wrap:wrap;gap:.75rem;display:flex}.btn{min-height:44px;font:inherit;cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;gap:.35rem;padding:.8rem 1.15rem;font-weight:700;text-decoration:none;display:inline-flex}.btn-primary{color:var(--ink);background:#fff}.btn-primary:hover{background:var(--accent-soft);text-decoration:none}.btn-ghost{color:#fff;background:0 0;border:1px solid #ffffff73}.btn-ghost:hover{background:#ffffff1a;text-decoration:none}.btn-accent{background:var(--accent-action);color:#fff}.btn-accent:hover{filter:brightness(1.05);text-decoration:none}.section{width:100%;max-width:1120px;margin:0 auto 2rem;padding-inline:1rem}.section-head{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.1rem;display:flex}.section-head h2{font-family:var(--display);letter-spacing:-.02em;margin:0;font-size:clamp(1.6rem,3vw,2.1rem)}.section-head p{color:var(--muted);margin:.35rem 0 0}.property-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.property-card{background:var(--card);border:1px solid var(--line);color:inherit;box-shadow:var(--shadow);border-radius:14px;text-decoration:none;transition:transform .18s,box-shadow .18s;display:grid;overflow:hidden}.property-card:hover{text-decoration:none;transform:translateY(-4px);box-shadow:0 16px 36px #1a1d261f}.property-card .media{position:relative}.property-card .badge-sale,.property-card .badge-rent{z-index:1;color:#fff;text-transform:uppercase;letter-spacing:.03em;border-radius:6px;padding:.25rem .55rem;font-size:.72rem;font-weight:800;position:absolute;top:.75rem;left:.75rem}.property-card .badge-sale{background:#ef4444}.property-card .badge-rent{background:var(--accent-action)}.property-card:focus-visible,.location-item:focus-visible{border-color:color-mix(in srgb, var(--accent-action) 48%, var(--line));text-decoration:none}.property-card .thumb{aspect-ratio:4/3;background:var(--accent-soft);object-fit:cover;width:100%}.property-card .thumb-empty{aspect-ratio:4/3;background:linear-gradient(145deg, var(--accent-soft), color-mix(in srgb, var(--accent) 25%, white))}.property-card .body{gap:.35rem;padding:.95rem 1rem 1.1rem;display:grid}.property-card .price{color:var(--accent-ink);font-weight:700}.property-card h3{margin:0;font-size:1.05rem;line-height:1.25}.meta{color:var(--muted);font-size:.9rem}.pill{background:var(--accent-soft);color:var(--accent-ink);border-radius:999px;align-items:center;width:fit-content;padding:.15rem .5rem;font-size:.75rem;font-weight:700;display:inline-flex}.page-hero{width:min(1120px,100% - 2rem);margin:1.75rem auto 1.5rem}.page-hero h1{font-family:var(--display);letter-spacing:-.02em;margin:0 0 .4rem;font-size:clamp(2rem,4vw,2.8rem)}.page-hero p{color:var(--muted);max-width:40rem;margin:0}.detail-grid{grid-template-columns:1.4fr .9fr;gap:1.25rem;width:min(1120px,100% - 2rem);margin:0 auto 2rem;display:grid}.gallery{gap:.65rem;display:grid}.gallery-main{aspect-ratio:16/10;object-fit:cover;background:var(--accent-soft);border-radius:18px;width:100%}.gallery-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem;display:grid}.gallery-strip img{aspect-ratio:1;object-fit:cover;border-radius:10px}.detail-panel,.form-panel,.legal{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:clamp(1.1rem,2vw,1.5rem)}.detail-panel h1{font-family:var(--display);margin:.35rem 0 .5rem;font-size:clamp(1.7rem,3vw,2.3rem)}.facts{grid-template-columns:1fr 1fr;gap:.65rem;margin:1rem 0;display:grid}.facts div{background:var(--paper);border-radius:12px;padding:.7rem .8rem}.facts span{color:var(--muted);font-size:.78rem;display:block}.facts strong{font-size:.98rem}.lead-form{gap:.75rem;display:grid}.lead-form label{gap:.3rem;font-size:.92rem;font-weight:600;display:grid}.lead-form input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.lead-form textarea,.lead-form select{border:1px solid var(--line);width:100%;min-height:44px;font:inherit;color:var(--ink);color-scheme:light;background:#fff;border-radius:10px;padding:.7rem .8rem}.lead-form input::placeholder,.lead-form textarea::placeholder{color:var(--muted);opacity:1}.lead-form label.consent,.lead-form label.check{color:var(--muted);align-items:flex-start;gap:.65rem;font-size:.9rem;font-weight:500;line-height:1.4;display:flex}.lead-form input[type=checkbox],.lead-form input[type=radio]{width:1.05rem;min-width:1.05rem;height:1.05rem;min-height:0;accent-color:var(--accent);cursor:pointer;border-radius:3px;flex-shrink:0;margin:.15rem 0 0;padding:0}.lead-form button{margin-top:.25rem}.notice{background:var(--accent-soft);color:var(--ink);border-radius:10px;padding:.75rem .9rem;font-size:.92rem}.notice.error{color:#991b1b;background:#fde8e8}.location-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;display:grid}.location-item{background:var(--card);border:1px solid var(--line);color:inherit;border-radius:14px;padding:1rem;text-decoration:none}.location-item:hover{border-color:color-mix(in srgb, var(--accent) 40%, var(--line));text-decoration:none}.location-item strong{font-size:1.05rem;display:block}.empty{text-align:center;color:var(--muted);border:1px dashed var(--line);background:#ffffffb3;border-radius:14px;padding:2rem}.foot{color:#d1d5db;background:#111827;border-top:1px solid #1f2937;flex-shrink:0;margin-top:auto;padding:2.75rem 0 0}.foot-grid{grid-template-columns:1.4fr 1fr 1fr 1fr;gap:1.5rem;padding-bottom:2rem;display:grid}.foot-brand strong{color:#fff;font-family:var(--display);margin-bottom:.55rem;font-size:1.25rem;display:block}.foot h3{color:#fff;margin:0 0 .75rem;font-size:.95rem}.foot p{color:#9ca3af;overflow-wrap:anywhere;max-width:28rem;margin:.25rem 0}.foot a{color:#d1d5db;text-decoration:none}.foot a:hover{color:#fff;text-decoration:underline}.foot nav{gap:.45rem;display:grid}.foot-bottom{color:#9ca3af;border-top:1px solid #1f2937;padding:1rem 0 1.25rem;font-size:.85rem}.foot-bottom p{margin:0}.search-panel{box-shadow:var(--shadow);background:#fff;border-radius:14px;gap:.75rem;padding:1rem;display:grid}.search-tabs{background:var(--mist);border-radius:10px;gap:.35rem;width:fit-content;padding:.25rem;display:inline-flex}.search-tabs a,.search-tabs span{color:var(--muted);border-radius:8px;padding:.45rem .9rem;font-size:.88rem;font-weight:700;text-decoration:none}.search-tabs .active{background:var(--accent-action);color:#fff}.search-fields{grid-template-columns:1.4fr 1fr 1fr auto;gap:.55rem;display:grid}.search-fields input,.search-fields select{border:1px solid var(--line);width:100%;min-height:48px;font:inherit;color:var(--ink);color-scheme:light;background:#fff;border-radius:8px;padding:.65rem .8rem}.search-fields input::placeholder{color:var(--muted);opacity:1}.legal h1{font-family:var(--display);margin-top:0}.legal p,.legal li{color:var(--muted)}@media (width<=980px){.foot-grid,.search-fields{grid-template-columns:1fr 1fr}.top nav{display:none}}@media (width<=900px){.property-grid,.location-list{grid-template-columns:1fr 1fr}.detail-grid{grid-template-columns:1fr}}@media (width<=640px){.top-inner{flex-wrap:wrap;padding:.65rem 0}.top-actions{width:100%}.search-fields,.foot-grid,.property-grid,.location-list,.gallery-strip{grid-template-columns:1fr}.hero-copy{padding-top:5rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.property-card{transition:none}}
