*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{--black:#0c0c0c;--charcoal:#1a1a1a;--dark:#222;--mid:#2d2d2d;--gold:#c9a96e;--gold-light:#d4ba88;--gold-dark:#a8883f;--white:#fff;--cream:#f8f6f2;--warm-gray:#f0ece6;--text-dark:#2a2a2a;--text-muted:#999;--text-muted-dark:#777;--text-light:#ccc;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Outfit',system-ui,sans-serif}
html{scroll-behavior:smooth}body{font-family:var(--sans);background:var(--black);color:var(--white);overflow-x:hidden;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%}
img{max-width:100%;display:block}
.container{max-width:1320px;margin:0 auto;padding:0 40px}
.section-label{font-size:11px;font-weight:600;letter-spacing:4px;text-transform:uppercase;color:var(--gold);margin-bottom:20px;display:flex;align-items:center;gap:16px}
.section-label::before{content:'';width:40px;height:1px;background:var(--gold)}
.section-title{font-family:var(--serif);font-weight:300;line-height:1.15;letter-spacing:-0.02em}
.gold-line{width:60px;height:1px;background:linear-gradient(90deg,var(--gold),transparent);margin:30px 0}
.section-label-dark{color:var(--gold-dark)}
.section-label-dark::before{background:var(--gold-dark)}
.section-title-dark{color:var(--text-dark)}

@keyframes fadeUp{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}
@keyframes heroScale{from{transform:scale(1.05)}to{transform:scale(1)}}
@keyframes pulse{0%,100%{opacity:.3}50%{opacity:1}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
.reveal{opacity:0;transform:translateY(40px);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1)}.reveal.visible{opacity:1;transform:translateY(0)}
.reveal-delay-1{transition-delay:.15s}.reveal-delay-2{transition-delay:.3s}.reveal-delay-3{transition-delay:.45s}.reveal-delay-4{transition-delay:.6s}

/* NAV */
.nav{position:fixed;top:0;left:0;right:0;z-index:1000;padding:24px 0;transition:all .5s ease}
.nav.scrolled{background:rgba(12,12,12,.95);backdrop-filter:blur(20px);padding:16px 0;border-bottom:1px solid rgba(201,169,110,.1)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;max-width:1320px;margin:0 auto;padding:0 40px}
.nav-logo{font-family:var(--serif);font-size:30px;font-weight:400;letter-spacing:6px;color:var(--white);text-decoration:none;display:flex;align-items:baseline}
.nav-links{display:flex;gap:40px;list-style:none;align-items:center}
.nav-links a{font-size:12px;font-weight:400;letter-spacing:2px;text-transform:uppercase;color:var(--text-light);text-decoration:none;transition:color .3s;position:relative}
.nav-links a::after{content:'';position:absolute;bottom:-4px;left:0;width:0;height:1px;background:var(--gold);transition:width .3s}
.nav-links a:hover,.nav-links a:focus-visible{color:var(--gold)}.nav-links a:hover::after,.nav-links a:focus-visible::after{width:100%}
.nav-toggle{display:none;background:none;border:none;cursor:pointer;padding:8px}
.nav-toggle:focus-visible{outline:1px solid var(--gold);outline-offset:2px}
.nav-toggle span{display:block;width:24px;height:1px;background:var(--white);margin:6px 0;transition:all .3s}
.nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* HERO */
.hero{position:relative;height:100vh;min-height:700px;display:flex;align-items:flex-end;overflow:hidden}
.hero-slideshow{position:absolute;inset:0}.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 1.8s ease-in-out}.hero-slide.active{opacity:1}.hero-slide img{width:100%;height:100%;object-fit:cover;animation:heroScale 12s ease-out forwards}
.hero-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(to bottom,rgba(12,12,12,.35) 0%,rgba(12,12,12,.1) 30%,rgba(12,12,12,.45) 65%,rgba(12,12,12,.92) 100%)}
.hero-content{position:relative;z-index:2;padding-bottom:80px;animation:fadeUp 1.2s cubic-bezier(.16,1,.3,1) .3s both}
.hero-tagline{font-size:11px;font-weight:500;letter-spacing:5px;text-transform:uppercase;color:var(--gold);margin-bottom:24px;display:flex;align-items:center;gap:12px}
.hero-tagline-line{display:inline-block;width:40px;height:1px;background:var(--gold)}
.hero-title{font-family:var(--serif);font-size:clamp(36px,5.5vw,80px);font-weight:300;line-height:1.1;max-width:800px;margin-bottom:28px}.hero-title em{font-style:italic;color:var(--gold-light)}
.hero-desc{font-size:16px;font-weight:300;line-height:1.7;color:var(--text-light);max-width:520px;margin-bottom:40px}
.hero-btns{display:flex;gap:16px;flex-wrap:wrap}
.hero-btn-primary{display:inline-flex;align-items:center;gap:10px;font-size:12px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--black);text-decoration:none;background:var(--gold);padding:18px 40px;transition:all .4s}.hero-btn-primary:hover,.hero-btn-primary:focus-visible{background:var(--gold-light);transform:translateY(-2px)}.hero-btn-primary span{transition:transform .3s;display:inline-block}.hero-btn-primary:hover span,.hero-btn-primary:focus-visible span{transform:translateX(4px)}
.hero-btn-outline{display:inline-flex;align-items:center;font-size:12px;font-weight:500;letter-spacing:3px;text-transform:uppercase;color:var(--white);text-decoration:none;border:1px solid rgba(255,255,255,.25);padding:18px 40px;transition:all .4s}.hero-btn-outline:hover,.hero-btn-outline:focus-visible{border-color:var(--gold);color:var(--gold)}
.hero-scroll{position:absolute;bottom:30px;right:40px;z-index:2;display:flex;flex-direction:column;align-items:center;gap:8px;animation:fadeIn 1.5s 1.5s both}.hero-scroll span{font-size:9px;letter-spacing:3px;text-transform:uppercase;color:var(--text-muted);writing-mode:vertical-rl}.hero-scroll-line{width:1px;height:50px;background:linear-gradient(to bottom,var(--gold),transparent);animation:pulse 2s infinite}
.hero-dots{position:absolute;bottom:40px;left:50%;transform:translateX(-50%);z-index:3;display:flex;gap:10px}.hero-dot{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.25);cursor:pointer;transition:all .4s;border:none;padding:0}.hero-dot.active{background:var(--gold);transform:scale(1.3)}.hero-dot:focus-visible{outline:1px solid var(--gold);outline-offset:3px}

/* STATS */
.stats-bar{background:var(--charcoal);border-top:1px solid rgba(201,169,110,.15);border-bottom:1px solid rgba(201,169,110,.15);padding:50px 0}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:40px;text-align:center}.stat-item{position:relative}.stat-item:not(:last-child)::after{content:'';position:absolute;right:-20px;top:50%;transform:translateY(-50%);width:1px;height:50px;background:rgba(201,169,110,.2)}
.stat-number{font-family:var(--serif);font-size:clamp(32px,4vw,52px);font-weight:300;color:var(--gold);line-height:1;margin-bottom:8px}.stat-label{font-size:11px;font-weight:400;letter-spacing:2px;text-transform:uppercase;color:var(--text-muted)}

/* ABOUT - LIGHT */
.about{padding:140px 0;background:var(--cream);color:var(--text-dark)}
.about-title{font-size:clamp(32px,4vw,52px);margin-bottom:16px}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}
.about-text{font-size:17px;font-weight:300;line-height:1.85;color:#555;margin-bottom:24px}
.about-quote{font-family:var(--serif);font-size:20px;font-style:italic;font-weight:300;line-height:1.7;color:#555;border-left:2px solid var(--gold);padding-left:24px;margin-top:30px}
.about-quote cite{display:block;font-family:var(--sans);font-size:12px;font-style:normal;font-weight:500;letter-spacing:2px;color:var(--gold-dark);margin-top:12px}
.about-values{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.about-value{background:var(--white);padding:28px;border:1px solid rgba(0,0,0,.06);transition:all .4s}.about-value:hover{box-shadow:0 8px 30px rgba(0,0,0,.06)}
.about-value h4{font-family:var(--serif);font-size:20px;font-weight:400;margin-bottom:8px;color:var(--text-dark)}.about-value p{font-size:13px;font-weight:300;line-height:1.75;color:#777}

/* SERVICES */
.services{padding:100px 0;background:var(--charcoal);position:relative;overflow:hidden}.services::before{content:'';position:absolute;top:0;right:0;width:40%;height:100%;background:linear-gradient(to left,rgba(201,169,110,.03),transparent);pointer-events:none}
.services-header{text-align:center;margin-bottom:56px}.services-header .section-label{justify-content:center}.services-header .section-label::before{display:none}.services-header .section-title{font-size:clamp(28px,3.4vw,44px);margin-bottom:16px}.services-header p{font-size:15px;font-weight:300;line-height:1.7;color:var(--text-muted);max-width:600px;margin:0 auto}
.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.service-card{background:var(--dark);padding:28px 24px;position:relative;overflow:hidden;transition:all .4s;border:1px solid rgba(255,255,255,.04)}.service-card:hover{border-color:rgba(201,169,110,.2);transform:translateY(-3px)}.service-card::before{content:'';position:absolute;top:0;left:0;width:100%;height:2px;background:linear-gradient(90deg,var(--gold),transparent);transform:scaleX(0);transform-origin:left;transition:transform .5s}.service-card:hover::before{transform:scaleX(1)}
.service-icon{width:32px;height:32px;margin-bottom:16px;color:var(--gold)}.service-card h3{font-family:var(--serif);font-size:20px;font-weight:400;margin-bottom:10px;line-height:1.2}.service-card p{font-size:13px;font-weight:300;line-height:1.65;color:var(--text-muted)}

/* CONSTRUCTION - LIGHT */
.construction-section{padding:120px 0;background:var(--white);color:var(--text-dark);overflow:hidden}
.construction-title{font-size:clamp(32px,4vw,52px);margin-bottom:24px}
.construction-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.construction-text p{font-size:16px;font-weight:300;line-height:1.85;color:#555;margin-bottom:20px}
.construction-image img{width:100%;height:480px;object-fit:cover}
.construction-stats{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:40px}.construction-stat{background:var(--cream);border:1px solid rgba(0,0,0,.06);padding:24px}.construction-stat .stat-number{font-family:var(--serif);font-size:32px;font-weight:300;color:var(--gold-dark);line-height:1;margin-bottom:6px}.construction-stat .stat-label{font-size:10px;font-weight:400;letter-spacing:2px;text-transform:uppercase;color:#999}
.ext-link{display:inline-flex;align-items:center;gap:10px;margin-top:30px;font-size:12px;font-weight:500;letter-spacing:2px;text-transform:uppercase;color:var(--gold-dark);text-decoration:none;border-bottom:1px solid rgba(168,136,63,.3);padding-bottom:4px;transition:all .3s}.ext-link:hover,.ext-link:focus-visible{border-bottom-color:var(--gold-dark)}.ext-link svg{width:14px;height:14px}

/* AI */
.ai-section{padding:120px 0;background:var(--charcoal);position:relative;overflow:hidden}.ai-section::before{content:'';position:absolute;top:-200px;right:-200px;width:600px;height:600px;background:radial-gradient(circle,rgba(201,169,110,.06) 0%,transparent 70%);pointer-events:none}
.ai-title{font-size:clamp(32px,4vw,52px);margin-bottom:24px}
.ai-lead{font-size:16px;font-weight:300;line-height:1.85;color:var(--text-light);margin-bottom:20px}
.ai-grid{display:grid;grid-template-columns:.55fr .45fr;gap:80px;align-items:center}.ai-callout{background:rgba(201,169,110,.08);border-left:3px solid var(--gold);padding:24px 28px;margin-top:30px}.ai-callout p{font-family:var(--serif);font-size:18px;font-style:italic;color:var(--gold-light);margin:0;line-height:1.6}
.ai-cap{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05);padding:24px 28px;display:flex;align-items:flex-start;gap:16px;transition:all .4s;margin-bottom:16px}.ai-cap:hover{border-color:rgba(201,169,110,.2);background:rgba(201,169,110,.04)}
.ai-cap-icon{width:36px;height:36px;flex-shrink:0;background:rgba(201,169,110,.1);display:flex;align-items:center;justify-content:center;color:var(--gold)}.ai-cap-icon svg{width:18px;height:18px}.ai-cap h4{font-family:var(--serif);font-size:18px;font-weight:400;margin-bottom:4px}.ai-cap p{font-size:12px;font-weight:300;color:var(--text-muted);margin:0;line-height:1.6}

/* PROPERTIES */
.properties{padding:140px 0 60px}
.properties-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:60px}.properties-header .section-title{font-size:clamp(32px,4vw,56px)}
.prop-row-a{display:grid;grid-template-columns:1.2fr .8fr;gap:24px;margin-bottom:24px}.prop-row-b{display:grid;grid-template-columns:.8fr 1.2fr;gap:24px;margin-bottom:24px}.prop-row-c{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px;margin-bottom:24px}
.prop-card{position:relative;overflow:hidden;cursor:pointer;background:var(--dark)}.prop-card img{width:100%;height:420px;object-fit:cover;transition:transform .8s cubic-bezier(.16,1,.3,1)}.prop-card:hover img{transform:scale(1.05)}
.prop-card-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(12,12,12,.9) 0%,rgba(12,12,12,.15) 50%,transparent 100%);transition:background .5s}.prop-card:hover .prop-card-overlay{background:linear-gradient(to top,rgba(12,12,12,.95) 0%,rgba(12,12,12,.3) 60%,rgba(12,12,12,.1) 100%)}
.prop-card-content{position:absolute;bottom:0;left:0;right:0;padding:36px}.prop-card-type{font-size:10px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--gold);margin-bottom:8px}.prop-card h3{font-family:var(--serif);font-size:28px;font-weight:400;margin-bottom:6px}.prop-card-meta{font-size:13px;font-weight:300;color:var(--text-muted);margin-bottom:10px}
.prop-card-status{display:inline-block;font-size:9px;font-weight:600;letter-spacing:2px;text-transform:uppercase;padding:4px 10px}.status-completed{background:rgba(76,175,80,.15);color:#81c784}.status-construction{background:rgba(255,183,77,.15);color:#ffb74d}
.prop-card-details{font-size:13px;font-weight:300;color:var(--text-light);line-height:1.7;opacity:0;max-height:0;overflow:hidden;transition:all .5s .1s}.prop-card:hover .prop-card-details{opacity:1;max-height:200px;margin-top:12px}
.prop-card-link{display:inline-flex;align-items:center;gap:6px;font-size:10px;font-weight:500;letter-spacing:2px;text-transform:uppercase;color:var(--gold);margin-top:10px;text-decoration:none;opacity:0;transform:translateY(8px);transition:all .4s .15s}.prop-card:hover .prop-card-link,.prop-card:focus-within .prop-card-link{opacity:1;transform:translateY(0)}

/* MAP */
.map-section{padding:100px 0;background:var(--charcoal)}
.map-layout{display:grid;grid-template-columns:1fr 340px;gap:40px;max-width:1200px;margin:0 auto}
.map-header{margin-bottom:40px}
.map-header .section-title{font-size:clamp(28px,3.5vw,48px);margin-bottom:12px}
.map-header p{font-size:15px;font-weight:300;color:var(--text-muted);line-height:1.6}
#map{width:100%;height:520px;border:1px solid rgba(201,169,110,.15);border-radius:4px}
.map-list{display:flex;flex-direction:column;gap:20px;max-height:520px;overflow-y:auto;padding-right:8px}
.map-list-item{border-bottom:1px solid rgba(255,255,255,.06);padding-bottom:16px}
.map-list-status{font-size:9px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--gold);margin-bottom:4px}
.map-list-name{font-family:var(--serif);font-size:20px;font-weight:400;margin-bottom:2px}
.map-list-meta{font-size:12px;font-weight:300;color:var(--text-muted)}

/* IMAGE BREAK */
.image-break{position:relative;height:500px;overflow:hidden}.image-break img{width:100%;height:100%;object-fit:cover}.image-break-overlay{position:absolute;inset:0;background:rgba(12,12,12,.5);display:flex;align-items:center;justify-content:center;padding:0 24px}.image-break-text{text-align:center}.image-break-text h2{font-family:var(--serif);font-size:clamp(26px,4vw,56px);font-weight:300;font-style:italic;line-height:1.3;max-width:700px}.image-break-text h2 span{color:var(--gold-light)}

/* PHOTO STRIP */
.photo-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding:4px 0}
.photo-strip img{width:100%;height:250px;object-fit:cover}

/* LEADERSHIP - LIGHT */
.leadership{padding:140px 0;background:var(--cream);color:var(--text-dark)}
.leadership-header{text-align:center;margin-bottom:80px}.leadership-header .section-label{justify-content:center}.leadership-header .section-label::before{display:none}
.leadership-header .section-title{font-size:clamp(32px,4vw,56px)}
.leadership-tier{margin-bottom:60px}.leadership-tier-label{font-size:10px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--gold-dark);text-align:center;margin-bottom:40px;opacity:.7}
.lg2{display:grid;grid-template-columns:1fr 1fr;gap:60px;max-width:1000px;margin:0 auto}.lg3{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;max-width:1100px;margin:0 auto}.lg4{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;max-width:1100px;margin:0 auto}.lg5{display:grid;grid-template-columns:repeat(5,1fr);gap:24px;max-width:1200px;margin:0 auto}
.leader-card{text-align:center}.leader-photo{width:160px;height:160px;border-radius:50%;margin:0 auto 20px;border:2px solid rgba(201,169,110,.3);background:var(--white);display:flex;align-items:center;justify-content:center}.leader-photo-sm{width:100px;height:100px;margin-bottom:14px}
.leader-photo-initials{font-family:var(--serif);font-size:48px;font-weight:300;color:var(--gold-dark)}.lpi-sm{font-size:30px}.leader-card h3{font-family:var(--serif);font-size:26px;font-weight:400;margin-bottom:4px;color:var(--text-dark)}.ln-sm{font-size:18px}.leader-card .leader-title{font-size:11px;font-weight:500;letter-spacing:2px;text-transform:uppercase;color:var(--gold-dark);margin-bottom:18px}.lt-sm{font-size:10px;letter-spacing:1.5px;margin-bottom:0!important}.leader-card p{font-size:13px;font-weight:300;line-height:1.8;color:#666;text-align:left}

/* NEWS */
.news-section{padding:120px 0;background:var(--black)}
.news-title{font-size:clamp(32px,4vw,52px);margin-bottom:50px}
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.news-card{border:1px solid rgba(255,255,255,.06);overflow:hidden;transition:border-color .4s;cursor:pointer;background:transparent}
.news-card:hover,.news-card:focus-within{border-color:rgba(201,169,110,.25)}
.news-card-bar{height:8px;background:var(--gold)}
.news-card-body{padding:32px}
.news-card-tag{font-size:10px;font-weight:500;letter-spacing:2px;text-transform:uppercase;color:var(--gold);margin-bottom:12px}
.news-card h3{font-family:var(--serif);font-size:22px;font-weight:400;margin-bottom:12px;color:var(--white)}
.news-card p{font-size:13px;font-weight:300;line-height:1.7;color:var(--text-muted)}
.news-card-date{font-size:11px;color:var(--text-muted);margin-top:16px}

/* INVEST */
.invest-section{padding:120px 0;background:var(--cream);color:var(--text-dark)}
.invest-title{font-size:clamp(32px,4vw,52px);margin-bottom:16px}
.invest-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-top:40px;align-items:center}
.invest-text p{font-size:17px;font-weight:300;line-height:1.85;color:#555;margin-bottom:24px}
.invest-cta{display:inline-flex;align-items:center;gap:10px;font-size:12px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--cream);text-decoration:none;background:var(--gold-dark);padding:18px 40px;transition:all .4s;margin-top:10px}
.invest-cta:hover,.invest-cta:focus-visible{background:var(--gold);color:var(--black)}
.invest-cta span{display:inline-block;transition:transform .3s}
.invest-cta:hover span,.invest-cta:focus-visible span{transform:translateX(4px)}
.invest-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.invest-stat{background:var(--white);padding:28px;border:1px solid rgba(0,0,0,.06)}
.invest-stat-num{font-family:var(--serif);font-size:32px;font-weight:300;color:var(--gold-dark);margin-bottom:6px}
.invest-stat-label{font-size:10px;font-weight:400;letter-spacing:2px;text-transform:uppercase;color:#999}

/* CONTACT */
.contact{padding:120px 0;background:var(--charcoal)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.contact-left .section-title{font-size:clamp(32px,4vw,52px);margin-bottom:20px}.contact-left p{font-size:16px;font-weight:300;line-height:1.8;color:var(--text-muted);margin-bottom:40px}
.contact-info{display:flex;flex-direction:column;gap:16px}
.contact-info-item{display:flex;align-items:center;gap:16px;font-size:14px;font-weight:300;color:var(--text-light)}
.contact-info-item svg{width:18px;height:18px;color:var(--gold);flex-shrink:0}
.contact-info-item a{color:inherit;text-decoration:none;transition:color .3s}
.contact-info-item a:hover,.contact-info-item a:focus-visible{color:var(--gold)}
.contact-form{display:flex;flex-direction:column;gap:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:11px;font-weight:500;letter-spacing:2px;text-transform:uppercase;color:var(--text-muted)}
.form-group input,.form-group textarea,.form-group select{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);padding:14px 18px;font-family:var(--sans);font-size:14px;font-weight:300;color:var(--white);transition:border-color .3s;outline:0;width:100%;max-width:100%}
.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--gold)}
.form-group input:invalid:not(:placeholder-shown),.form-group textarea:invalid:not(:placeholder-shown){border-color:rgba(255,120,120,.4)}
.form-group textarea{min-height:120px;resize:vertical}.form-group select{cursor:pointer}.form-group select option{background:var(--dark)}
.hp-field{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.form-submit{display:inline-flex;align-items:center;gap:10px;background:var(--gold);color:var(--black);border:none;padding:16px 48px;font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:3px;text-transform:uppercase;cursor:pointer;transition:all .4s;align-self:flex-start}
.form-submit:hover,.form-submit:focus-visible{background:var(--gold-light);transform:translateY(-2px)}
.form-submit:disabled{opacity:.5;cursor:not-allowed;transform:none}
.form-status{font-size:13px;color:var(--gold-light);min-height:20px}

/* FOOTER */
.footer{padding:60px 0 40px;border-top:1px solid rgba(255,255,255,.06);background:var(--black)}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
.footer-logo{font-family:var(--serif);font-size:22px;font-weight:400;letter-spacing:6px;color:var(--white);display:flex;align-items:baseline}
.footer-links{display:flex;gap:30px;list-style:none;flex-wrap:wrap;justify-content:center}.footer-links a{font-size:11px;font-weight:400;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-muted);text-decoration:none;transition:color .3s}.footer-links a:hover,.footer-links a:focus-visible{color:var(--gold)}
.footer-social{display:flex;justify-content:center;margin-top:30px}
.footer-social-link{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid rgba(255,255,255,.1);color:var(--text-muted);transition:all .3s}
.footer-social-link:hover,.footer-social-link:focus-visible{color:var(--gold);border-color:var(--gold)}
.footer-social-link svg{width:18px;height:18px}
.footer-copy{text-align:center;margin-top:24px;padding-top:24px;border-top:1px solid rgba(255,255,255,.04);font-size:11px;font-weight:300;color:var(--text-muted)}

/* ==================== RESPONSIVE ==================== */
/* Tablet */
@media(max-width:1024px){
  .container{padding:0 28px}
  .nav-inner{padding:0 28px}
  .about-grid,.contact-grid,.construction-grid,.ai-grid,.invest-grid{grid-template-columns:1fr;gap:50px}
  .services-grid{grid-template-columns:repeat(2,1fr);gap:16px}
  .prop-row-a,.prop-row-b{grid-template-columns:1fr}
  .prop-row-c{grid-template-columns:1fr 1fr}
  .lg2{grid-template-columns:1fr;gap:40px}
  .lg3{grid-template-columns:1fr 1fr}
  .lg4{grid-template-columns:repeat(4,1fr);gap:20px}
  .lg5{grid-template-columns:repeat(3,1fr)}
  .stats-grid{grid-template-columns:repeat(2,1fr);gap:30px}
  .stat-item:not(:last-child)::after{display:none}
  .hero-scroll{display:none}
  .map-layout{grid-template-columns:1fr}
  .map-list{max-height:none}
  .news-grid{grid-template-columns:1fr 1fr}
  .photo-strip{grid-template-columns:repeat(2,1fr)}
  .photo-strip img{height:220px}
}

/* Mobile */
@media(max-width:768px){
  .container{padding:0 20px}
  .nav-inner{padding:0 20px}
  .nav{padding:18px 0}
  .nav.scrolled{padding:14px 0}
  .nav-logo{font-size:22px;letter-spacing:4px}
  .nav-links{display:none}
  .nav-toggle{display:block}
  .nav-links.open{display:flex;flex-direction:column;position:absolute;top:100%;left:0;right:0;background:rgba(12,12,12,.97);backdrop-filter:blur(20px);padding:18px 20px;gap:4px;border-bottom:1px solid rgba(201,169,110,.12);align-items:stretch;max-height:70vh;overflow-y:auto;box-shadow:0 12px 24px rgba(0,0,0,.4)}
  .nav-links.open a{display:block;width:100%;padding:12px 4px;border-bottom:1px solid rgba(255,255,255,.04)}
  .nav-links.open li:last-child a{border-bottom:none}

  .hero{min-height:640px;height:100svh}
  .hero-content{padding-bottom:100px}
  .hero-tagline{font-size:10px;letter-spacing:3px;gap:10px}
  .hero-tagline-line{width:28px}
  .hero-desc{font-size:15px;margin-bottom:28px}
  .hero-btn-primary,.hero-btn-outline{padding:16px 28px;font-size:11px;letter-spacing:2px;justify-content:center}
  .hero-btns{flex-direction:column;align-items:stretch;width:100%;gap:12px}
  .hero-dots{bottom:36px;gap:8px}
  .hero-dot{width:7px;height:7px}

  .stats-bar{padding:36px 0}
  .stats-grid{grid-template-columns:1fr 1fr;gap:24px}
  .stat-number{font-size:30px}
  .stat-label{font-size:10px;letter-spacing:1.5px}

  .about,.services,.construction-section,.ai-section,.leadership,.contact,.news-section,.invest-section{padding:72px 0}
  .properties{padding:72px 0 30px}
  .services-grid{grid-template-columns:repeat(2,1fr);gap:12px}
  .service-card{padding:20px 18px}
  .service-icon{width:28px;height:28px;margin-bottom:12px}
  .service-card h3{font-size:17px;margin-bottom:8px}
  .service-card p{font-size:12px;line-height:1.6}
  .map-section{padding:60px 0}
  .leadership-header,.services-header{margin-bottom:48px}
  .leadership-tier{margin-bottom:40px}

  .about-values,.construction-stats,.invest-stats{grid-template-columns:1fr}
  .about-grid,.contact-grid,.construction-grid,.ai-grid,.invest-grid{gap:36px}

  .news-grid{grid-template-columns:1fr;gap:20px}
  .news-card-body{padding:24px}
  .news-card h3{font-size:20px}

  .prop-row-c{grid-template-columns:1fr}
  .prop-card img{height:280px}
  .prop-card-content{padding:24px}
  .prop-card h3{font-size:24px}

  .construction-image img{height:320px}

  .form-row{grid-template-columns:1fr}
  .form-submit{width:100%;justify-content:center}
  .contact-info-item{font-size:13px;gap:12px}

  .lg3{grid-template-columns:1fr}
  .lg4{grid-template-columns:repeat(4,1fr);gap:12px}
  .lg4 .leader-photo-sm{width:78px;height:78px}
  .lg4 .lpi-sm{font-size:24px}
  .lg4 .ln-sm{font-size:14px;line-height:1.2}
  .lg4 .lt-sm{font-size:9px;letter-spacing:1px}
  .lg5{grid-template-columns:repeat(2,1fr)}

  .footer-inner{flex-direction:column;gap:20px;text-align:center}
  .image-break{height:320px}
  #map{height:380px}

  .photo-strip{grid-template-columns:1fr 1fr;gap:2px}
  .photo-strip img{height:170px}

  .gold-line{margin:24px 0}
  .services-header p{font-size:15px}
}

/* Small phones */
@media(max-width:480px){
  .container{padding:0 16px}
  .nav-inner{padding:0 16px}
  .hero{min-height:560px}
  .hero-title{font-size:clamp(30px,10vw,44px)}
  .hero-desc{font-size:14px}
  .hero-content{padding-bottom:90px}
  .hero-dots{bottom:30px}
  .prop-card img{height:240px}
  .lg5{grid-template-columns:1fr 1fr;gap:16px}
  .leader-photo{width:120px;height:120px}
  .leader-photo-initials{font-size:36px}
  .stat-number{font-size:26px}
  .about,.services,.construction-section,.ai-section,.leadership,.contact,.news-section,.invest-section{padding:56px 0}
  .properties{padding:56px 0 20px}
  .footer-links{gap:16px}
  .invest-cta{padding:16px 24px;font-size:11px}
  .services-grid{grid-template-columns:1fr;gap:10px}
  .service-card{padding:20px 18px}
  .service-icon{width:26px;height:26px;margin-bottom:10px}
  .service-card h3{font-size:17px;margin-bottom:6px}
  .service-card p{font-size:12.5px}
  .lg4 .leader-photo-sm{width:62px;height:62px;margin-bottom:10px}
  .lg4 .lpi-sm{font-size:20px}
  .lg4 .ln-sm{font-size:13px;line-height:1.2}
  .lg4 .lt-sm{font-size:8.5px;letter-spacing:1px}
}

/* Motion sensitivity */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .reveal{opacity:1;transform:none}
}

/* ==================== DETAIL / LISTING PAGES ==================== */
/* Banner hero used on property + news pages */
.page-hero{position:relative;height:60vh;min-height:440px;overflow:hidden;display:flex;align-items:flex-end}
.page-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.page-hero::after{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,rgba(12,12,12,.3) 0%,rgba(12,12,12,.2) 40%,rgba(12,12,12,.85) 100%);z-index:1}
.page-hero-content{position:relative;z-index:2;padding:0 40px 70px;max-width:1320px;margin:0 auto;width:100%;animation:fadeUp 1s cubic-bezier(.16,1,.3,1) .2s both}
.page-hero-crumb{font-size:11px;font-weight:500;letter-spacing:4px;text-transform:uppercase;color:var(--gold);margin-bottom:16px;display:flex;align-items:center;gap:12px}
.page-hero-crumb a{color:var(--gold);text-decoration:none;opacity:.8;transition:opacity .3s}
.page-hero-crumb a:hover,.page-hero-crumb a:focus-visible{opacity:1}
.page-hero-crumb-sep{opacity:.4}
.page-hero-title{font-family:var(--serif);font-size:clamp(36px,5vw,68px);font-weight:300;line-height:1.1;letter-spacing:-0.02em;margin-bottom:14px}
.page-hero-meta{font-size:14px;font-weight:300;color:var(--text-light);letter-spacing:.5px}
.page-hero-meta span{color:var(--gold);margin:0 10px}

/* Property detail */
.prop-detail{padding:100px 0;background:var(--black)}
.prop-detail-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:80px;align-items:start}
.prop-detail-overview .section-label{margin-bottom:18px}
.prop-detail-overview h2{font-family:var(--serif);font-size:clamp(28px,3vw,38px);font-weight:300;line-height:1.2;margin-bottom:22px;letter-spacing:-0.01em}
.prop-detail-overview p{font-size:16px;font-weight:300;line-height:1.85;color:var(--text-light);margin-bottom:18px}
.prop-detail-sidebar{background:var(--charcoal);border:1px solid rgba(201,169,110,.12);padding:36px 32px;position:sticky;top:110px}
.prop-spec{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.05);font-size:13px}
.prop-spec:last-of-type{border-bottom:none}
.prop-spec-key{color:var(--text-muted);letter-spacing:1px;text-transform:uppercase;font-size:10px;font-weight:500}
.prop-spec-val{color:var(--white);font-weight:400;text-align:right}
.prop-spec-val.status-completed{color:#81c784;font-size:11px}
.prop-spec-val.status-construction{color:#ffb74d;font-size:11px}
.prop-sidebar-cta{display:block;margin-top:26px;padding:14px 20px;background:var(--gold);color:var(--black);text-align:center;text-decoration:none;font-size:11px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;transition:all .3s}
.prop-sidebar-cta:hover,.prop-sidebar-cta:focus-visible{background:var(--gold-light);transform:translateY(-2px)}
.prop-sidebar-ext{display:block;margin-top:12px;padding:14px 20px;border:1px solid rgba(201,169,110,.3);color:var(--gold);text-align:center;text-decoration:none;font-size:11px;font-weight:500;letter-spacing:2.5px;text-transform:uppercase;transition:all .3s}
.prop-sidebar-ext:hover,.prop-sidebar-ext:focus-visible{border-color:var(--gold);background:rgba(201,169,110,.08)}

/* Gallery */
.prop-gallery{padding:80px 0;background:var(--charcoal)}
.prop-gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.prop-gallery-grid img{width:100%;height:260px;object-fit:cover;transition:transform .6s cubic-bezier(.16,1,.3,1);cursor:pointer}
.prop-gallery-grid img:hover{transform:scale(1.03)}
.prop-gallery-grid .prop-gallery-wide{grid-column:span 2;height:300px}
.prop-gallery-grid .prop-gallery-tall{grid-row:span 2;height:532px}

/* Features row */
.prop-features{padding:80px 0;background:var(--black);border-top:1px solid rgba(255,255,255,.04)}
.prop-features-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.prop-feature{background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.05);padding:30px 26px;transition:all .4s}
.prop-feature:hover{border-color:rgba(201,169,110,.2);background:rgba(201,169,110,.03)}
.prop-feature-icon{width:32px;height:32px;color:var(--gold);margin-bottom:16px}
.prop-feature h4{font-family:var(--serif);font-size:18px;font-weight:400;margin-bottom:6px;color:var(--white)}
.prop-feature p{font-size:12px;font-weight:300;color:var(--text-muted);line-height:1.7}

/* Next / back */
.prop-nav{padding:60px 0 120px;background:var(--black);border-top:1px solid rgba(255,255,255,.04)}
.prop-nav-inner{display:flex;justify-content:space-between;align-items:center;gap:40px;flex-wrap:wrap}
.prop-nav a{color:var(--text-muted);text-decoration:none;font-size:11px;font-weight:500;letter-spacing:2.5px;text-transform:uppercase;transition:color .3s;display:inline-flex;align-items:center;gap:10px}
.prop-nav a:hover,.prop-nav a:focus-visible{color:var(--gold)}
.prop-nav-back{color:var(--gold) !important}

/* News listing */
.news-listing{padding:100px 0 60px;background:var(--black);min-height:60vh}
.news-listing-grid{display:grid;grid-template-columns:1fr;gap:24px;max-width:1000px;margin:0 auto}
.news-listing-card{display:grid;grid-template-columns:360px 1fr;gap:36px;background:var(--charcoal);border:1px solid rgba(255,255,255,.06);overflow:hidden;transition:all .4s;text-decoration:none;color:inherit}
.news-listing-card:hover,.news-listing-card:focus-visible{border-color:rgba(201,169,110,.3);transform:translateY(-2px)}
.news-listing-card-img{width:100%;height:100%;min-height:240px;object-fit:cover}
.news-listing-card-body{padding:36px 36px 36px 0;display:flex;flex-direction:column;justify-content:center}
.news-listing-card-tag{font-size:10px;font-weight:500;letter-spacing:2px;text-transform:uppercase;color:var(--gold);margin-bottom:12px}
.news-listing-card h3{font-family:var(--serif);font-size:26px;font-weight:400;line-height:1.25;margin-bottom:12px;color:var(--white)}
.news-listing-card p{font-size:14px;font-weight:300;line-height:1.7;color:var(--text-muted);margin-bottom:18px}
.news-listing-card-meta{font-size:11px;color:var(--text-muted);display:flex;align-items:center;gap:16px}
.news-listing-card-meta span{color:var(--gold)}
.news-listing-readmore{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--gold);margin-top:16px;transition:gap .3s}
.news-listing-card:hover .news-listing-readmore{gap:14px}

/* News article */
.news-article{padding:90px 0 80px;background:var(--black)}
.news-article-inner{max-width:780px;margin:0 auto}
.news-article-meta{display:flex;gap:18px;font-size:11px;color:var(--text-muted);margin-bottom:22px;text-transform:uppercase;letter-spacing:2px}
.news-article-meta span.tag{color:var(--gold);font-weight:600}
.news-article h1{font-family:var(--serif);font-size:clamp(32px,4vw,52px);font-weight:300;line-height:1.15;letter-spacing:-0.01em;margin-bottom:24px}
.news-article-lead{font-size:19px;font-weight:300;line-height:1.65;color:var(--text-light);margin-bottom:36px;font-family:var(--serif);font-style:italic;padding-bottom:28px;border-bottom:1px solid rgba(255,255,255,.06)}
.news-article-body p{font-size:16px;font-weight:300;line-height:1.9;color:var(--text-light);margin-bottom:22px}
.news-article-body h2{font-family:var(--serif);font-size:28px;font-weight:400;margin:40px 0 16px;color:var(--white)}
.news-article-body ul{margin:18px 0 22px 24px;color:var(--text-light)}
.news-article-body li{font-size:15px;line-height:1.85;margin-bottom:6px;font-weight:300}
.news-article-body a{color:var(--gold);text-decoration:none;border-bottom:1px solid rgba(201,169,110,.3);transition:border-color .3s}
.news-article-body a:hover,.news-article-body a:focus-visible{border-bottom-color:var(--gold)}
.news-article-image{margin:30px 0;width:100%;height:auto}
.news-article-image img{width:100%;height:auto;display:block}
.news-article-image figcaption{font-size:12px;color:var(--text-muted);margin-top:10px;font-style:italic;text-align:center}

/* Related / view-more */
.news-related{padding:70px 0 100px;background:var(--charcoal);border-top:1px solid rgba(255,255,255,.04)}
.news-related h3{font-family:var(--serif);font-size:24px;font-weight:400;text-align:center;margin-bottom:40px;color:var(--white)}
.news-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1100px;margin:0 auto}

.news-view-all{text-align:center;margin-top:50px}
.news-view-all a{display:inline-flex;align-items:center;gap:10px;padding:14px 36px;border:1px solid rgba(201,169,110,.3);color:var(--gold);text-decoration:none;font-size:11px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;transition:all .3s}
.news-view-all a:hover,.news-view-all a:focus-visible{border-color:var(--gold);background:rgba(201,169,110,.08)}

/* Clickable news card on homepage */
a.news-card{text-decoration:none;color:inherit;display:block}

/* Clickable property card on homepage */
a.prop-card-anchor{text-decoration:none;color:inherit;display:block;position:relative;overflow:hidden;cursor:pointer;background:var(--dark)}

/* Page responsive */
@media(max-width:1024px){
  .prop-detail-grid{grid-template-columns:1fr;gap:40px}
  .prop-detail-sidebar{position:static}
  .prop-gallery-grid{grid-template-columns:1fr 1fr}
  .prop-gallery-grid .prop-gallery-wide{grid-column:span 2}
  .prop-gallery-grid .prop-gallery-tall{grid-row:auto;height:260px}
  .prop-features-grid{grid-template-columns:1fr 1fr}
  .news-listing-card{grid-template-columns:260px 1fr;gap:24px}
  .news-listing-card-body{padding:24px 24px 24px 0}
  .news-related-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:768px){
  .page-hero{height:auto;min-height:360px;padding:120px 0 40px}
  .page-hero-content{padding:0 20px 0}
  .page-hero-title{font-size:clamp(28px,8vw,40px)}
  .prop-detail{padding:60px 0}
  .prop-detail-sidebar{padding:28px 24px}
  .prop-gallery{padding:50px 0}
  .prop-gallery-grid{grid-template-columns:1fr;gap:8px}
  .prop-gallery-grid img,.prop-gallery-grid .prop-gallery-wide{height:240px;grid-column:auto}
  .prop-features{padding:50px 0}
  .prop-features-grid{grid-template-columns:1fr;gap:16px}
  .prop-nav{padding:40px 0 70px}
  .prop-nav-inner{flex-direction:column;align-items:flex-start;gap:16px}
  .news-listing{padding:70px 0 40px}
  .news-listing-card{grid-template-columns:1fr}
  .news-listing-card-img{min-height:220px;height:220px}
  .news-listing-card-body{padding:24px 24px}
  .news-article{padding:70px 0 50px}
  .news-article-inner{padding:0 4px}
  .news-related{padding:50px 0 70px}
  .news-related-grid{grid-template-columns:1fr}
}
