:root{--canvas:#fafafa;--surface:#fff;--ink:#18181b;--muted:#71717a;--whisper:#e2e8f080;--gold:#d4af37;--gold-soft:#d4af371a;--gold-hover:#c49f2e;--dark-block:#18181b;--dark-surface:#27272a;--font-display:"Outfit", system-ui, sans-serif;--font-mono:"JetBrains Mono", monospace;--max-w:1400px;--gap-section:clamp(5rem, 10vw, 9rem)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased}body{font-family:var(--font-display);background:var(--canvas);color:var(--ink);line-height:1.6;overflow-x:hidden}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:var(--font-display);background:0 0;border:none}ul,ol{list-style:none}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.03em;color:var(--ink);font-weight:700;line-height:1.05}h1{font-size:clamp(3.2rem,6vw,6rem);font-weight:800}h2{font-size:clamp(2.2rem,4vw,3.6rem)}h3{font-size:clamp(1.2rem,2vw,1.6rem)}p{color:var(--muted);max-width:65ch;font-size:1rem;line-height:1.75}.mono{font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;font-size:.8rem}.label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--gold);font-size:.72rem;font-weight:500}.wrap{max-width:var(--max-w);margin:0 auto;padding:0 clamp(1.5rem,4vw,3rem)}.section{padding:var(--gap-section) 0}.accent-line{background:var(--gold);width:48px;height:2px;margin:1.2rem 0 2rem}.btn-primary{background:var(--gold);color:var(--surface);text-transform:uppercase;letter-spacing:.1em;border:none;justify-content:center;align-items:center;padding:.9rem 2.4rem;font-size:.82rem;font-weight:600;transition:background .25s,transform .15s;display:inline-flex}.btn-primary:hover{background:var(--gold-hover)}.btn-primary:active{transform:translateY(-1px)}.btn-ghost{color:var(--ink);text-transform:uppercase;letter-spacing:.1em;border:1.5px solid var(--ink);background:0 0;justify-content:center;align-items:center;padding:.9rem 2.4rem;font-size:.82rem;font-weight:600;transition:all .25s;display:inline-flex}.btn-ghost:hover{background:var(--ink);color:var(--surface)}.btn-ghost:active{transform:translateY(-1px)}.btn-ghost-light{color:var(--surface);text-transform:uppercase;letter-spacing:.1em;background:0 0;border:1.5px solid #ffffff4d;justify-content:center;align-items:center;padding:.9rem 2.4rem;font-size:.82rem;font-weight:600;transition:all .25s;display:inline-flex}.btn-ghost-light:hover{border-color:var(--gold);color:var(--gold);background:#ffffff1a}.nav{z-index:100;-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--whisper);background:#fafafaeb;transition:all .3s;position:fixed;top:0;left:0;right:0}.nav-scrolled{box-shadow:0 1px 20px #0000000a}.nav-inner{justify-content:space-between;align-items:center;padding:.8rem clamp(1.5rem,4vw,3rem);display:flex}.nav-logo-text{font-family:var(--font-display);color:var(--ink);letter-spacing:-.04em;text-transform:uppercase;font-size:1.6rem;font-weight:700}.nav-links{align-items:center;gap:2.4rem;display:flex}.nav-link{text-transform:uppercase;letter-spacing:.08em;color:var(--ink);font-size:.78rem;font-weight:600;transition:color .2s;position:relative}.nav-link:after{content:"";background:var(--gold);width:0;height:1.5px;transition:width .3s;position:absolute;bottom:-4px;left:0}.nav-link:hover{color:var(--gold)}.nav-link:hover:after{width:100%}.nav-cta-btn{background:var(--gold);color:var(--surface);text-transform:uppercase;letter-spacing:.1em;border:none;padding:.6rem 1.6rem;font-size:.72rem;font-weight:600;transition:background .25s}.nav-cta-btn:hover{background:var(--gold-hover)}.hamburger{cursor:pointer;flex-direction:column;gap:5px;padding:4px;display:none}.hamburger span{background:var(--ink);width:22px;height:1.5px;transition:all .3s;display:block}.hero{align-items:stretch;min-height:100vh;padding-top:72px;display:flex}.hero-layout{grid-template-columns:1fr 1.15fr;min-height:calc(100vh - 72px);display:grid}.hero-content{flex-direction:column;justify-content:center;padding:clamp(2rem,5vw,5rem) clamp(2rem,4vw,3rem) clamp(2rem,5vw,5rem) clamp(2rem,5vw,4rem);display:flex}.hero-content h1{margin-bottom:.5rem}.hero-content h1 .thin{font-weight:200;display:block}.hero-subtitle{color:var(--muted);max-width:50ch;margin-bottom:2.5rem;font-size:1.15rem;line-height:1.7}.hero-actions{flex-wrap:wrap;gap:1rem;margin-bottom:3.5rem;display:flex}.hero-meta{border-top:1px solid var(--whisper);grid-template-columns:repeat(3,auto);gap:3rem;padding-top:2.5rem;display:grid}.hero-meta-value{font-family:var(--font-mono);color:var(--ink);letter-spacing:-.02em;font-size:1.6rem;font-weight:600}.hero-meta-label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-top:.3rem;font-size:.68rem}.hero-image-wrap{position:relative;overflow:hidden}.hero-image{object-fit:cover;filter:brightness(.95)contrast(1.05);width:100%;height:100%}.marquee-strip{background:var(--dark-block);white-space:nowrap;padding:1rem 0;overflow:hidden}.marquee-track{gap:3rem;width:max-content;animation:30s linear infinite marquee;display:flex}.marquee-item{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.14em;color:#ffffff80;flex-shrink:0;font-size:.72rem}.marquee-dot{color:var(--gold)}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.heritage-layout{grid-template-columns:1.1fr 1fr;align-items:center;gap:clamp(3rem,6vw,6rem);display:grid}.heritage-layout.reverse{direction:rtl}.heritage-layout.reverse>*{direction:ltr}.heritage-img{object-fit:cover;width:100%;height:520px}.heritage-content p{margin-bottom:1.2rem}.dark-block{background:var(--dark-block);color:var(--surface)}.dark-block h2,.dark-block h3,.dark-block h4{color:var(--surface)}.dark-block p{color:#ffffff8c}.res-grid{grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:3rem;display:grid}.res-card{border:1px solid var(--whisper);background:var(--surface);padding:2.5rem 2rem;transition:border-color .3s,transform .3s;position:relative}.res-card:hover{border-color:var(--gold);transform:translateY(-3px)}.res-card:nth-child(2){margin-top:2rem}.res-card-type{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:1rem;font-size:.68rem}.res-card h3{margin-bottom:.6rem}.res-card-price{font-family:var(--font-display);color:var(--ink);letter-spacing:-.03em;margin:1rem 0 .3rem;font-size:1.8rem;font-weight:700}.res-card-meta{font-family:var(--font-mono);color:var(--muted);letter-spacing:.04em;margin-bottom:1.5rem;font-size:.72rem}.res-card-units{background:var(--gold-soft);font-family:var(--font-mono);color:var(--gold);letter-spacing:.1em;text-transform:uppercase;margin-bottom:1.5rem;padding:.3rem .8rem;font-size:.68rem;display:inline-block}.spec-row{grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-top:3rem;display:grid}.spec-card{background:var(--dark-surface);border-left:3px solid var(--gold);padding:2rem}.spec-card h4{color:var(--surface);margin-bottom:.8rem;font-size:.95rem;font-weight:600}.spec-card p{color:#ffffff80;margin:0;font-size:.88rem;line-height:1.65}.loc-layout{grid-template-columns:1.2fr 1fr;align-items:start;gap:clamp(3rem,6vw,5rem);display:grid}.loc-image{object-fit:cover;width:100%;height:420px}.loc-list{flex-direction:column;display:flex}.loc-item{border-bottom:1px solid var(--whisper);justify-content:space-between;align-items:center;padding:1rem 0;display:flex}.loc-name{color:var(--ink);font-size:.95rem;font-weight:500}.loc-tag{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--muted);border:1px solid var(--whisper);padding:.25rem .7rem;font-size:.65rem}.faq-list{max-width:820px;margin-top:3rem}.faq-item{border-bottom:1px solid var(--whisper)}.faq-q{text-align:left;width:100%;color:var(--ink);cursor:pointer;font-size:1rem;font-weight:500;font-family:var(--font-display);background:0 0;border:none;justify-content:space-between;align-items:center;padding:1.4rem 0;transition:color .2s;display:flex}.faq-q:hover{color:var(--gold)}.faq-icon{color:var(--gold);font-size:1.3rem;font-family:var(--font-display);flex-shrink:0;margin-left:1.5rem;font-weight:300;transition:transform .3s}.faq-icon.open{transform:rotate(45deg)}.faq-a{max-height:0;transition:max-height .4s cubic-bezier(.16,1,.3,1),padding .3s;overflow:hidden}.faq-a.open{max-height:250px;padding-bottom:1.2rem}.faq-a p{color:var(--muted);margin:0;font-size:.92rem}.contact-layout{grid-template-columns:1fr 1.3fr;align-items:start;gap:clamp(3rem,6vw,6rem);display:grid}.contact-info-block{margin-top:2rem}.contact-info-label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:.3rem;font-size:.68rem}.contact-info-value{color:var(--ink);margin-bottom:1.5rem;font-size:1rem;font-weight:500}.contact-info-value a{color:var(--gold);transition:opacity .2s}.contact-info-value a:hover{opacity:.7}.form-group{margin-bottom:1.2rem}.form-label{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink);margin-bottom:.5rem;font-size:.68rem;font-weight:500;display:block}.form-input,.form-textarea,.form-select{border:none;border-bottom:1px solid var(--whisper);width:100%;font-family:var(--font-display);color:var(--ink);background:0 0;outline:none;padding:.85rem 0;font-size:.95rem;transition:border-color .3s}.form-input:focus,.form-textarea:focus,.form-select:focus{border-bottom-color:var(--gold)}.form-textarea{resize:vertical;min-height:80px}.form-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' fill='%2371717A' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10z'/%3E%3C/svg%3E");background-position:right 0 center;background-repeat:no-repeat}.form-row{grid-template-columns:1fr 1fr;gap:2rem;display:grid}.footer{background:var(--dark-block);color:var(--surface);padding:4rem 0 1.5rem}.footer-grid{border-bottom:1px solid #ffffff14;grid-template-columns:1.5fr 1fr 1fr;gap:3rem;padding-bottom:3rem;display:grid}.footer-logo-text{font-family:var(--font-display);color:var(--surface);letter-spacing:-.04em;text-transform:uppercase;margin-bottom:1.5rem;font-size:1.8rem;font-weight:700;display:block}.footer h4{color:var(--surface);letter-spacing:0;margin-bottom:1rem;font-size:.9rem;font-weight:600}.footer p{color:#ffffff73;max-width:none;margin-bottom:.5rem;font-size:.85rem}.footer a{color:#ffffff73;transition:color .2s}.footer a:hover{color:var(--gold)}.footer-bottom{color:#ffffff40;font-size:.72rem;font-family:var(--font-mono);letter-spacing:.04em;justify-content:space-between;align-items:center;padding-top:1.5rem;display:flex}@keyframes revealUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.reveal{opacity:0}.reveal.vis{animation:.7s cubic-bezier(.16,1,.3,1) forwards revealUp}.d1{animation-delay:80ms}.d2{animation-delay:.16s}.d3{animation-delay:.24s}.d4{animation-delay:.32s}@media (width<=1024px){.hero-layout{grid-template-columns:1fr}.hero-image-wrap{height:50vh}.heritage-layout,.heritage-layout.reverse{direction:ltr;grid-template-columns:1fr}.heritage-layout.reverse>*{direction:ltr}.heritage-img{height:360px}.res-grid{grid-template-columns:1fr}.res-card:nth-child(2){margin-top:0}.spec-row,.loc-layout,.contact-layout,.footer-grid{grid-template-columns:1fr}.nav-links{display:none}.hamburger{display:flex}.nav-links.open{background:var(--canvas);border-bottom:1px solid var(--whisper);flex-direction:column;gap:1rem;width:100%;padding:1.5rem clamp(1.5rem,4vw,3rem);display:flex;position:absolute;top:100%;left:0}.hero-meta{gap:2rem}.form-row{grid-template-columns:1fr;gap:0}.footer-bottom{text-align:center;flex-direction:column;gap:.5rem}}@media (width<=600px){.hero-meta{grid-template-columns:1fr;gap:1.2rem}.hero-actions{flex-direction:column}.hero-actions .btn-primary,.hero-actions .btn-ghost{width:100%}}.gallery-section{padding:5rem 0;overflow:hidden}.gallery-track{scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;gap:2rem;padding:0 clamp(1.5rem,4vw,3rem);display:flex;overflow-x:auto}.gallery-track::-webkit-scrollbar{display:none}.gallery-item{scroll-snap-align:start;flex-shrink:0;width:clamp(280px,40vw,600px);position:relative}.gallery-item img{object-fit:cover;width:100%;height:clamp(400px,60vh,700px)}.gallery-caption{font-family:var(--font-mono);color:var(--muted);text-transform:uppercase;letter-spacing:.1em;margin-top:1rem;font-size:.72rem}@media (width<=768px){.nav-logo-text{font-size:1.3rem}.footer-logo-text{margin-bottom:1rem;font-size:1.5rem}.gallery-item{scroll-snap-align:center;width:85vw!important}.gallery-track{padding:0 1.5rem;scroll-padding-left:1.5rem}}
