:root{--bg:#f6f0e8;--surface:#fffaf4;--surface-2:#efe4d4;--ink:#17130f;--ink-soft:#4e463d;--line:rgba(23, 19, 15, 0.12);--accent:#0c4b8e;--accent-2:#d8a02f;--white:#ffffff;--serif:"Instrument Serif",Georgia,serif;--sans:"Manrope","Helvetica Neue",system-ui,sans-serif;--mono:"JetBrains Mono",ui-monospace,monospace;--shadow:0 22px 60px rgba(23, 19, 15, 0.12);--maxw:1220px;--gutter:clamp(20px, 4vw, 48px)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--sans);color:var(--ink);background:radial-gradient(circle at top left,rgba(216,160,47,.16),transparent 26%),linear-gradient(180deg,#fbf6ef 0,#f6f0e8 45%,#f3eadf 100%);line-height:1.6}a{color:inherit;text-decoration:none}img,video{display:block;max-width:100%}button,input,select,textarea{font:inherit}.container{width:min(var(--maxw),calc(100% - (var(--gutter) * 2)));margin:0 auto}.topbar{position:sticky;top:0;z-index:20;backdrop-filter:blur(14px) saturate(135%);background:rgba(251,246,239,.88);border-bottom:1px solid var(--line)}.topbar-inner{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 0}.brand{display:flex;flex-direction:column;gap:2px}.brand-name{font-family:var(--serif);font-size:28px;letter-spacing:-.03em;color:var(--accent)}.brand-tag{font-size:10px;font-family:var(--mono);text-transform:uppercase;letter-spacing:.12em;color:var(--ink-soft)}.form-actions,.hero-actions,.topbar-cta{display:flex;flex-wrap:wrap;gap:12px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border-radius:999px;border:1px solid transparent;transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--ink);color:var(--white)}.btn-primary:hover{background:var(--accent)}.btn-ghost{border-color:rgba(23,19,15,.18);background:rgba(255,255,255,.45)}.btn-ghost:hover{border-color:rgba(23,19,15,.34)}.hero,.section{padding:clamp(56px,9vw,104px) 0}.form-layout,.hero-grid,.two-col{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(28px,4vw,56px);align-items:start}.eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}.eyebrow::before{content:"";width:24px;height:1px;background:currentColor}h1,h2,h3,p{margin:0}h1{margin-top:18px;font-family:var(--serif);font-size:clamp(44px, 6.5vw, 82px);line-height:.95;letter-spacing:-.04em;max-width:12ch}h1 em,h2 em{font-style:italic;color:var(--accent)}.lead,.section-copy{max-width:60ch;font-size:clamp(17px, 1.35vw, 20px);color:var(--ink-soft)}.lead{margin:22px 0 28px}.feature-grid,.hero-meta{margin-top:28px}.hero-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.feature-card,.hero-meta div,.info-card,.lead-card{border:1px solid var(--line);background:rgba(255,250,244,.78);box-shadow:var(--shadow)}.hero-meta div{padding:18px;border-radius:20px}.card-label,.meta-label{display:block;margin-bottom:8px;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft)}.hero-card{position:sticky;top:98px}.floorplan-shell{overflow:hidden;border-radius:28px;border:1px solid rgba(12,75,142,.18);background:#fff;box-shadow:0 24px 64px rgba(12,75,142,.18)}.floorplan-shell img{width:100%;display:block;object-fit:cover}.video-caption{display:flex;justify-content:space-between;gap:20px;margin-top:12px;font-size:12px;font-family:var(--mono);color:var(--ink-soft);text-transform:uppercase;letter-spacing:.08em}.section-alt{background:linear-gradient(180deg,rgba(255,250,244,.72),rgba(239,228,212,.58));border-top:1px solid rgba(23,19,15,.06);border-bottom:1px solid rgba(23,19,15,.06)}.section-head{margin-bottom:36px}.form-copy h2,.section-head h2,.two-col h2{margin-top:16px;font-family:var(--serif);font-size:clamp(32px, 4.2vw, 58px);line-height:.98;letter-spacing:-.03em;max-width:14ch}.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:0}.feature-card,.info-card{padding:24px;border-radius:22px}.feature-card h3{margin-bottom:10px;font-size:20px}.feature-card p,.info-card p{color:var(--ink-soft)}.gallery-grid{margin-top:36px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:260px;gap:14px}.gallery-item{position:relative;overflow:hidden;border-radius:20px;border:1px solid var(--line);background:var(--surface-2);cursor:pointer;padding:0;display:block;width:100%;height:100%}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease;display:block}.gallery-item:hover img{transform:scale(1.04)}.gallery-label{position:absolute;bottom:0;left:0;right:0;padding:28px 18px 16px;background:linear-gradient(to top,rgba(23,19,15,.64),transparent);color:#fff;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;text-align:left}.gallery-item--wide{grid-column:span 2}.stack{display:grid;gap:16px}.checklist{padding:0;margin:24px 0 0;list-style:none;display:grid;gap:10px}.checklist li{position:relative;padding-left:24px;color:var(--ink-soft)}.checklist li::before{content:"•";position:absolute;left:0;top:0;color:var(--accent)}.lead-card{padding:clamp(22px,3vw,34px);border-radius:28px}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.field-grid label{display:grid;gap:8px}.field-grid label.full{grid-column:1/-1}.field-grid span{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase}.field-grid input,.field-grid select,.field-grid textarea{width:100%;border:1px solid rgba(23,19,15,.14);border-radius:16px;padding:14px 16px;background:rgba(255,255,255,.9);color:var(--ink)}.field-grid textarea{resize:vertical;min-height:140px}.field-grid input:focus,.field-grid select:focus,.field-grid textarea:focus{outline:2px solid rgba(12,75,142,.16);border-color:rgba(12,75,142,.34)}.form-actions{margin-top:20px}.form-note,.form-status{margin-top:14px;font-size:14px;color:var(--ink-soft)}.form-status[data-state=error]{color:#8c2a19}.form-status[data-state=success]{color:#0f5f35}.lightbox{position:fixed;inset:0;z-index:100;background:rgba(12,10,8,.92);display:flex;align-items:center;justify-content:center;padding:20px}.lightbox[hidden]{display:none}.lb-figure{margin:0;max-width:min(1100px,94vw);width:100%;display:flex;flex-direction:column;align-items:center;gap:14px}.lb-img{width:100%;max-height:82vh;object-fit:contain;border-radius:18px;box-shadow:0 32px 80px rgba(0,0,0,.5)}.lb-caption{color:rgba(255,255,255,.7);font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase}.lb-close,.lb-next,.lb-prev{position:fixed;background:rgba(255,250,244,.14);border:1px solid rgba(255,255,255,.14);color:#fff;cursor:pointer;border-radius:999px;transition:background .2s ease;line-height:1}.lb-close:hover,.lb-next:hover,.lb-prev:hover{background:rgba(255,250,244,.26)}.lb-close{top:20px;right:24px;width:44px;height:44px;font-size:18px;display:grid;place-items:center}.lb-next,.lb-prev{top:50%;transform:translateY(-50%);width:52px;height:52px;font-size:32px;display:grid;place-items:center}.lb-prev{left:20px}.lb-next{right:20px}.mobile-bar{display:none}@media (max-width:980px){.feature-grid,.form-layout,.hero-grid,.two-col{grid-template-columns:1fr}.hero-card{position:static}.hero-meta{grid-template-columns:repeat(3,1fr)}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:220px}.gallery-item--wide{grid-column:span 2}}@media (max-width:720px){.topbar-inner{align-items:flex-start;flex-direction:column}.topbar-cta{width:100%}.topbar-cta .btn{flex:1 1 0}.hero-meta{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr;grid-auto-rows:240px}.gallery-item--wide{grid-column:span 1}.field-grid{grid-template-columns:1fr}.lb-prev{left:8px}.lb-next{right:8px}.mobile-bar{position:sticky;bottom:0;z-index:30;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);background:rgba(255,250,244,.98);backdrop-filter:blur(12px)}.mobile-bar a{padding:14px 10px;text-align:center;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase}}