:root{--color-primary:#f5f0e8;--color-secondary:#4a3f35;--color-accent:#8b9a7b;--color-accent-gold:#b8a078;--color-bg:#faf8f4;--color-surface:#fff;--color-text:#4a3f35;--color-text-muted:#7a6f65;--color-text-light:#f5f0e8;--color-border:#e8e2d8;--color-overlay:#4a3f358c;--font-display:"Playfair Display", Georgia, "Times New Roman", serif;--font-body:"Inter", system-ui, -apple-system, sans-serif;--space-xs:.5rem;--space-sm:1rem;--space-md:1.5rem;--space-lg:2.5rem;--space-xl:4rem;--space-2xl:6rem;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--shadow-sm:0 2px 8px #4a3f3514;--shadow-md:0 8px 24px #4a3f351f;--shadow-lg:0 16px 48px #4a3f3529;--header-height:72px;--max-width:1280px;--transition:.25s ease}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--header-height)}body{font-family:var(--font-body);color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-size:1rem;line-height:1.65}#root{min-height:100svh}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}h1,h2,h3,h4{font-family:var(--font-display);color:var(--color-secondary);margin:0;font-weight:500;line-height:1.2}h1{letter-spacing:-.02em;font-size:clamp(2.25rem,5vw,3.75rem)}h2{letter-spacing:-.01em;font-size:clamp(1.75rem,3.5vw,2.5rem)}h3{font-size:clamp(1.25rem,2.5vw,1.5rem)}p{margin:0}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.container{width:100%;max-width:var(--max-width);padding-inline:var(--space-md);margin:0 auto}@media (width>=768px){.container{padding-inline:var(--space-lg)}}.section{padding-block:var(--space-xl)}.section-label{font-family:var(--font-body);letter-spacing:.15em;text-transform:uppercase;color:var(--color-accent);margin-bottom:var(--space-sm);font-size:.75rem;font-weight:600}.section-header{margin-bottom:var(--space-lg);max-width:42rem}.section-header p{margin-top:var(--space-sm);color:var(--color-text-muted);font-size:1.0625rem}.btn{justify-content:center;align-items:center;gap:var(--space-xs);letter-spacing:.04em;text-transform:uppercase;border-radius:var(--radius-sm);transition:background var(--transition), color var(--transition), border-color var(--transition), transform var(--transition);border:1px solid #0000;padding:.875rem 1.75rem;font-size:.875rem;font-weight:500;display:inline-flex}.btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.btn-primary{background:var(--color-secondary);color:var(--color-text-light);border-color:var(--color-secondary)}.btn-primary:hover{background:#3a3229;transform:translateY(-1px)}.btn-outline{color:var(--color-text-light);border-color:var(--color-text-light);background:0 0}.btn-outline:hover{background:var(--color-text-light);color:var(--color-secondary)}.btn-ghost{color:var(--color-secondary);border-color:var(--color-border);background:0 0}.btn-ghost:hover{border-color:var(--color-secondary);background:var(--color-primary)}.site-header{z-index:100;height:var(--header-height);transition:background var(--transition);background:0 0;position:fixed;top:0;left:0;right:0}.site-header:before{content:"";z-index:-1;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border);pointer-events:none;background:#faf8f4eb;position:absolute;inset:0}.header-inner{justify-content:space-between;align-items:center;gap:var(--space-md);height:100%;display:flex}.header-brand{flex-direction:column;flex-shrink:0;gap:.125rem;display:flex}.brand-name{font-family:var(--font-display);color:var(--color-secondary);letter-spacing:.02em;font-size:1.125rem;font-weight:500}.brand-location{letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted);font-size:.6875rem;font-weight:500}.main-nav{align-items:center;gap:var(--space-lg);display:flex}.nav-list{align-items:center;gap:var(--space-md);margin:0;padding:0;list-style:none;display:flex}.nav-list a{letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted);transition:color var(--transition), border-color var(--transition);border-bottom:2px solid #0000;padding:.25rem 0;font-size:.8125rem;font-weight:500}.nav-list a:hover,.nav-list a.active{color:var(--color-secondary);border-bottom-color:var(--color-accent-gold)}.nav-cta{white-space:nowrap;padding:.625rem 1.25rem;font-size:.75rem}.menu-toggle{z-index:1;background:0 0;border:none;flex-direction:column;justify-content:center;gap:5px;width:2rem;height:2rem;padding:0;display:none;position:relative}.menu-bar{background:var(--color-secondary);width:100%;height:2px;transition:transform var(--transition);display:block}@media (width<=1024px){.menu-toggle{display:flex}.main-nav{top:var(--header-height);height:calc(100dvh - var(--header-height));max-height:calc(100dvh - var(--header-height));align-items:stretch;gap:var(--space-sm);padding:var(--space-md) var(--space-lg) calc(var(--space-lg) + env(safe-area-inset-bottom,0px));background:var(--color-bg);transition:transform var(--transition);-webkit-overflow-scrolling:touch;overscroll-behavior:contain;visibility:hidden;pointer-events:none;flex-direction:column;position:fixed;left:0;right:0;overflow-y:auto;transform:translate(100%)}.site-header.menu-open .main-nav{visibility:visible;pointer-events:auto;transform:translate(0)}.site-header.menu-open .menu-bar:nth-child(2){opacity:0}.site-header.menu-open .menu-bar:first-child{transform:translateY(7px)rotate(45deg)}.site-header.menu-open .menu-bar:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.nav-list{flex-direction:column;flex:auto;align-items:stretch;gap:0;min-height:0}.nav-list a{border-bottom:1px solid var(--color-border);padding:.875rem 0;font-size:1.0625rem;display:block}.nav-cta{text-align:center;flex-shrink:0;width:100%;margin-top:auto}}.site-footer{background:var(--color-secondary);color:var(--color-primary);padding-top:var(--space-xl)}.footer-inner{gap:var(--space-lg);padding-bottom:var(--space-lg);grid-template-columns:1fr;display:grid}@media (width>=768px){.footer-inner{grid-template-columns:2fr 1.5fr 1fr}}.footer-brand h3{color:var(--color-primary);margin-bottom:var(--space-xs)}.footer-brand p{color:#f5f0e8b3;font-size:.9375rem}.footer-label{letter-spacing:.1em;text-transform:uppercase;color:var(--color-accent-gold);margin-bottom:var(--space-xs);font-size:.75rem;font-weight:600}.footer-contact{flex-direction:column;gap:.25rem;font-size:.9375rem;display:flex}.footer-contact a{color:var(--color-primary);opacity:.85;transition:opacity var(--transition)}.footer-contact a:hover{opacity:1}.footer-links{gap:var(--space-xs);flex-direction:column;font-size:.875rem;display:flex}.footer-links a{color:#f5f0e8cc;transition:color var(--transition)}.footer-links a:hover{color:var(--color-primary)}.footer-disclaimer{padding-block:var(--space-md);border-top:1px solid #f5f0e826}.footer-disclaimer p{color:#f5f0e88c;max-width:56rem;font-size:.75rem;line-height:1.6}.footer-copy{margin-top:var(--space-sm)}.hero{min-height:100svh;padding-bottom:var(--space-xl);align-items:flex-end;display:flex;position:relative}.hero-media{z-index:0;position:absolute;inset:0}.hero-image{object-fit:cover;width:100%;height:100%}.hero-overlay{background:linear-gradient(#4a3f3526 0%,#4a3f3559 60%,#4a3f35bf 100%);position:absolute;inset:0}.hero-content{z-index:1;color:var(--color-text-light);max-width:42rem;padding-top:calc(var(--header-height) + var(--space-xl));position:relative}.hero-eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--color-accent-gold);margin-bottom:var(--space-sm);font-size:.75rem;font-weight:600}.hero h1{color:var(--color-text-light);margin-bottom:var(--space-md)}.hero-subtitle{color:#f5f0e8d9;margin-top:.35em;font-size:.55em;font-weight:400;display:block}.hero-description{color:#f5f0e8e6;margin-bottom:var(--space-lg);max-width:32rem;font-size:1.125rem;line-height:1.6}.hero-actions{gap:var(--space-sm);flex-wrap:wrap;display:flex}.overview{background:var(--color-surface)}.stats-grid{gap:var(--space-sm);margin-bottom:var(--space-lg);grid-template-columns:repeat(2,1fr);display:grid}@media (width>=640px){.stats-grid{grid-template-columns:repeat(3,1fr)}}@media (width>=1024px){.stats-grid{grid-template-columns:repeat(6,1fr)}}.stat-card{text-align:center;padding:var(--space-md);background:var(--color-primary);border-radius:var(--radius-md);border:1px solid var(--color-border);flex-direction:column;align-items:center;display:flex}.stat-value{font-family:var(--font-display);color:var(--color-secondary);font-size:1.75rem;font-weight:500;line-height:1}.stat-label{margin-top:var(--space-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);font-size:.75rem;font-weight:500}.map-container{border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);aspect-ratio:16/7;overflow:hidden}.map-container iframe{border:0;width:100%;height:100%}.lightbox-overlay{z-index:1000;padding:var(--space-md);background:#141210eb;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.lightbox-content{align-items:center;max-width:90vw;max-height:90vh;display:flex;position:relative}.lightbox-figure{align-items:center;gap:var(--space-sm);flex-direction:column;margin:0;display:flex}.lightbox-image{object-fit:contain;border-radius:var(--radius-sm);max-width:90vw;max-height:80vh}.lightbox-caption{color:var(--color-primary);text-align:center;font-size:.9375rem}.lightbox-close{color:var(--color-primary);opacity:.8;transition:opacity var(--transition);background:0 0;border:none;padding:.25rem;font-size:2rem;line-height:1;position:absolute;top:-2.5rem;right:0}.lightbox-close:hover{opacity:1}.lightbox-nav{color:var(--color-primary);width:3rem;height:3rem;transition:background var(--transition);background:#f5f0e826;border:1px solid #f5f0e84d;border-radius:50%;justify-content:center;align-items:center;font-size:2rem;line-height:1;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.lightbox-nav:hover{background:#f5f0e840}.lightbox-prev{left:-4rem}.lightbox-next{right:-4rem}@media (width<=768px){.lightbox-prev{left:.5rem}.lightbox-next{right:.5rem}.lightbox-close{top:-3rem;right:.5rem}}.estate-tabs{background:var(--color-bg)}.tab-list{gap:var(--space-xs);padding-bottom:var(--space-sm);margin-bottom:var(--space-lg);-webkit-overflow-scrolling:touch;scrollbar-width:none;display:flex;overflow-x:auto}.tab-list::-webkit-scrollbar{display:none}.tab-button{letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted);background:var(--color-surface);border:1px solid var(--color-border);transition:background var(--transition), color var(--transition), border-color var(--transition);border-radius:100px;flex-shrink:0;padding:.75rem 1.25rem;font-size:.8125rem;font-weight:500}.tab-button:hover{border-color:var(--color-secondary);color:var(--color-secondary)}.tab-button.active{background:var(--color-secondary);color:var(--color-text-light);border-color:var(--color-secondary)}.tab-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.tab-panel-content{gap:var(--space-lg);grid-template-columns:1fr;display:grid}@media (width>=1024px){.tab-panel-content{grid-template-columns:1fr 1.4fr;align-items:start}}.tab-panel-text h3{margin-bottom:var(--space-sm)}.tab-panel-text p{color:var(--color-text-muted);margin-bottom:var(--space-md)}.highlights-list{gap:var(--space-xs);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.highlights-list li{color:var(--color-text);padding-left:1.25rem;font-size:.9375rem;position:relative}.highlights-list li:before{content:"";background:var(--color-accent-gold);border-radius:50%;width:6px;height:6px;position:absolute;top:.55em;left:0}.tab-panel-gallery{gap:var(--space-sm);grid-template-columns:repeat(auto-fill,minmax(180px,1fr));display:grid}.gallery-thumb{aspect-ratio:4/3;border-radius:var(--radius-md);background:var(--color-primary);cursor:pointer;box-shadow:var(--shadow-sm);transition:transform var(--transition), box-shadow var(--transition);border:none;padding:0;position:relative;overflow:hidden}.gallery-thumb:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.gallery-thumb img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.gallery-thumb:hover img{transform:scale(1.04)}.thumb-caption{padding:var(--space-sm);color:var(--color-text-light);text-align:left;opacity:0;transition:opacity var(--transition);background:linear-gradient(#0000,#4a3f35cc);font-size:.75rem;position:absolute;bottom:0;left:0;right:0}.gallery-thumb:hover .thumb-caption,.gallery-thumb:focus-visible .thumb-caption{opacity:1}.tab-gallery-more{margin-top:var(--space-sm);color:var(--color-text-muted);grid-column:1/-1;font-size:.875rem}.tab-gallery-more a{color:var(--color-secondary);text-underline-offset:2px;text-decoration:underline}.gallery-section{background:var(--color-surface)}.gallery-filters{gap:var(--space-xs);margin-bottom:var(--space-lg);flex-wrap:wrap;display:flex}.filter-chip{color:var(--color-text-muted);background:var(--color-bg);border:1px solid var(--color-border);transition:background var(--transition), color var(--transition), border-color var(--transition);border-radius:100px;align-items:center;gap:.375rem;padding:.5rem 1rem;font-size:.8125rem;font-weight:500;display:inline-flex}.filter-chip:hover{border-color:var(--color-secondary);color:var(--color-secondary)}.filter-chip.active{background:var(--color-primary);border-color:var(--color-accent-gold);color:var(--color-secondary)}.filter-count{background:var(--color-surface);color:var(--color-text-muted);border-radius:100px;padding:.125rem .375rem;font-size:.6875rem}.gallery-grid{gap:var(--space-sm);grid-template-columns:repeat(2,1fr);display:grid}@media (width>=640px){.gallery-grid{grid-template-columns:repeat(3,1fr)}}@media (width>=1024px){.gallery-grid{gap:var(--space-md);grid-template-columns:repeat(4,1fr)}}.gallery-item{aspect-ratio:1;border-radius:var(--radius-md);background:var(--color-primary);cursor:pointer;box-shadow:var(--shadow-sm);transition:transform var(--transition), box-shadow var(--transition);border:none;padding:0;overflow:hidden}.gallery-item:hover{box-shadow:var(--shadow-md);transform:scale(1.02)}.gallery-item img{object-fit:cover;width:100%;height:100%}.gallery-empty{text-align:center;color:var(--color-text-muted);padding:var(--space-xl)}.gallery-load-more{margin-top:var(--space-lg);justify-content:center;display:flex}.video-tour{background:var(--color-bg)}.video-container{border-radius:var(--radius-lg);box-shadow:var(--shadow-md);aspect-ratio:16/9;background:var(--color-secondary);overflow:hidden}.video-container iframe{border:0;width:100%;height:100%}.video-placeholder{width:100%;height:100%;position:relative}.video-poster{object-fit:cover;width:100%;height:100%}.video-placeholder-overlay{justify-content:center;align-items:center;gap:var(--space-sm);background:var(--color-overlay);color:var(--color-text-light);flex-direction:column;display:flex;position:absolute;inset:0}.play-icon{border:2px solid var(--color-text-light);opacity:.9;border-radius:50%;justify-content:center;align-items:center;width:4rem;height:4rem;padding-left:.25rem;font-size:1.25rem;display:flex}.video-hint{opacity:.7;font-size:.8125rem}.video-hint code{border-radius:var(--radius-sm);background:#0003;padding:.125rem .375rem;font-family:ui-monospace,monospace;font-size:.75rem}.turnstile-wrap{min-height:65px}.turnstile-missing{color:var(--color-text-muted);padding:var(--space-sm);background:var(--color-bg);border-radius:var(--radius-sm);border:1px dashed var(--color-border);font-size:.8125rem}.contact-section{background:var(--color-primary)}.contact-grid{gap:var(--space-xl);grid-template-columns:1fr;display:grid}@media (width>=1024px){.contact-grid{grid-template-columns:1fr 1.2fr;align-items:start}}.contact-info p{color:var(--color-text-muted);margin-top:var(--space-sm);margin-bottom:var(--space-lg)}.contact-details{gap:var(--space-md);flex-direction:column;display:flex}.contact-details>div{flex-direction:column;gap:.125rem;display:flex}.contact-detail-label{letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent);font-size:.6875rem;font-weight:600}.contact-details strong{font-family:var(--font-display);color:var(--color-secondary);font-size:1.125rem;font-weight:500}.contact-details a{color:var(--color-secondary);text-underline-offset:2px;transition:opacity var(--transition);text-decoration:underline}.contact-details a:hover{opacity:.75}.contact-form{gap:var(--space-md);padding:var(--space-lg);background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);flex-direction:column;display:flex}.form-row{gap:var(--space-md);grid-template-columns:1fr;display:grid}@media (width>=640px){.form-row{grid-template-columns:1fr 1fr}}.contact-form label{color:var(--color-text-muted);flex-direction:column;gap:.375rem;font-size:.8125rem;font-weight:500;display:flex}.contact-form input,.contact-form select,.contact-form textarea{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text);transition:border-color var(--transition);padding:.75rem 1rem;font-family:inherit;font-size:1rem}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--color-accent);outline:none}.contact-form textarea{resize:vertical;min-height:120px}.form-success{padding:var(--space-sm) var(--space-md);border:1px solid var(--color-accent);border-radius:var(--radius-sm);color:var(--color-secondary);background:#8b9a7b26;font-size:.9375rem}.form-error{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);color:#6b3a34;background:#a050461a;border:1px solid #a0504659;font-size:.9375rem}.honeypot{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.contact-phone{font-variant-numeric:tabular-nums}
