
:root{
  --primary:#00365D;
  --primary-deep:#022843;
  --text:#112233;
  --muted:#5d6c7b;
  --bg:#ffffff;
  --soft:#f4f8fb;
  --line:#dbe5ee;
  --card:#ffffff;
  --shadow:0 20px 50px rgba(7,32,58,.08);
  --radius:22px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:'Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  color:var(--text);
  background:var(--bg);
  line-height:1.6;
}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
.container{width:min(1180px, calc(100% - 32px));margin:0 auto}

.site-header{
  position:sticky;top:0;z-index:1000;
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(219,229,238,.8);
}
.header-inner{
  min-height:82px;
  display:flex;align-items:center;justify-content:space-between;gap:24px;
}
.brand-logo{height:42px;width:auto;object-fit:contain}
.nav{display:flex;align-items:center;gap:24px}
.nav a{font-size:.97rem;color:var(--primary);font-weight:600}
.nav-cta{
  background:var(--primary);color:#fff !important;padding:12px 18px;border-radius:999px;
  box-shadow:var(--shadow)
}
.menu-toggle{
  display:none;border:0;background:transparent;color:var(--primary);font-size:28px;cursor:pointer
}

.hero{
  position:relative;min-height:100svh;display:grid;align-items:end;overflow:hidden
}
.hero-media,.hero-media img{
  position:absolute;inset:0;width:100%;height:100%
}
.hero-media img{object-fit:cover}
.hero-overlay{
  position:absolute;inset:0;
  background:linear-gradient(180deg, rgba(0,0,0,.18) 0%, rgba(0,22,40,.45) 45%, rgba(0,29,51,.72) 100%);
}
.hero-content{
  position:relative;z-index:2;color:#fff;padding:130px 0 56px
}
.eyebrow,.section-tag,.light{letter-spacing:.18em;text-transform:uppercase;font-size:.76rem;font-weight:700}
.hero h1{
  max-width:920px;margin:14px 0 14px;
  font-size:clamp(2.3rem, 6vw, 4.6rem);line-height:1.02
}
.hero-copy{
  max-width:700px;font-size:1.08rem;color:rgba(255,255,255,.9)
}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin:28px 0 34px}
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  padding:14px 22px;border-radius:999px;font-weight:700;transition:.25s ease;
}
.btn:hover{transform:translateY(-2px)}
.btn-primary{background:var(--primary);color:#fff}
.btn-secondary{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.34)}
.hero-highlights{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;
  max-width:980px
}
.hero-highlights div{
  background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14);
  padding:18px 18px;border-radius:18px;backdrop-filter:blur(10px)
}
.hero-highlights span{display:block;font-size:1.08rem;font-weight:800}
.hero-highlights small{display:block;color:rgba(255,255,255,.82);margin-top:6px}

.section{padding:96px 0}
.section-soft{background:var(--soft)}
.section-dark{
  background:linear-gradient(135deg, var(--primary) 0%, var(--primary-deep) 100%);
  color:#fff
}
.heading{margin-bottom:34px}
.heading.center{text-align:center}
.heading h2,.section-intro h2,.lifestyle-copy h2,.investment-copy h2,.location-copy h2,.contact-copy h2{
  font-size:clamp(1.9rem, 4vw, 3rem);line-height:1.1;margin:.35rem 0 0
}
.section-intro p,.heading p,.lifestyle-copy p,.location-copy p,.contact-copy p,.investment-note{color:var(--muted)}
.section-dark .investment-note,.section-dark .light{color:rgba(255,255,255,.86)}

.split{
  display:grid;grid-template-columns:1.08fr .92fr;gap:34px;align-items:center
}
.summary-card{
  background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)
}
.summary-image img{height:310px;width:100%;object-fit:cover}
.summary-points{padding:26px}
.summary-points article{padding:14px 0;border-bottom:1px solid var(--line)}
.summary-points article:last-child{border-bottom:0}
.summary-points strong{display:block;font-size:1rem}
.summary-points span{color:var(--muted)}

.stats-grid{
  display:grid;grid-template-columns:repeat(3, minmax(0,1fr));gap:20px
}
.stat-card{
  background:#fff;border:1px solid var(--line);border-radius:20px;padding:26px;box-shadow:var(--shadow)
}
.stat-card strong{display:block;font-size:1.4rem;color:var(--primary);margin-bottom:8px}
.stat-card span{color:var(--muted)}

.floor-grid{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px
}
.floor-card{
  background:#fff;border:1px solid var(--line);border-radius:24px;padding:24px;box-shadow:var(--shadow)
}
.floor-number{
  display:inline-flex;width:48px;height:48px;border-radius:50%;align-items:center;justify-content:center;
  background:var(--soft);color:var(--primary);font-weight:800;margin-bottom:12px
}
.floor-card h3{margin:0 0 8px;font-size:1.24rem}
.floor-card p{margin:0 0 18px;color:var(--muted)}
.floor-card img{height:240px;width:100%;object-fit:cover;border-radius:16px}

.lifestyle{
  background:linear-gradient(180deg,#ffffff 0%, #f7fafc 100%)
}
.lifestyle-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center
}
.benefits-list{
  list-style:none;padding:0;margin:24px 0 0;display:grid;gap:12px
}
.benefits-list li{
  position:relative;padding-left:20px;font-weight:600;color:var(--text)
}
.benefits-list li::before{
  content:"";position:absolute;left:0;top:.7em;width:8px;height:8px;border-radius:50%;background:var(--primary)
}
.lifestyle-panel{
  background:#fff;border:1px solid var(--line);border-radius:28px;overflow:hidden;box-shadow:var(--shadow)
}
.lifestyle-panel img{height:560px;width:100%;object-fit:cover}

.gallery-grid{
  display:grid;grid-template-columns:repeat(4, minmax(0,1fr));gap:14px
}
.gallery-item{
  position:relative;border-radius:18px;overflow:hidden;cursor:pointer;min-height:220px;background:#eef4f8
}
.gallery-item img{
  width:100%;height:100%;object-fit:cover;transition:transform .45s ease
}
.gallery-item:hover img{transform:scale(1.04)}
.gallery-large{grid-column:span 2;grid-row:span 2;min-height:454px}

.investment-block{
  display:grid;grid-template-columns:1fr .85fr;gap:28px;align-items:center
}
.price{
  margin:12px 0 10px;
  font-size:clamp(2.7rem,5vw,4.4rem);font-weight:800;line-height:1
}
.investment-card{
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  border-radius:24px;padding:28px;backdrop-filter:blur(10px)
}
.investment-card h3{margin-top:0}
.investment-card ul{margin:16px 0 0;padding-left:18px}
.investment-card li{margin:10px 0;color:rgba(255,255,255,.92)}

.location-grid{
  display:grid;grid-template-columns:1fr .9fr;gap:28px;align-items:center
}
.location-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:24px}
.location .btn-secondary{
  color:var(--primary);background:#eef4f8;border:1px solid var(--line)
}
.map-card{
  background:linear-gradient(135deg,#f6fbff,#eaf2f8);border:1px solid var(--line);
  border-radius:28px;min-height:360px;display:grid;place-items:center;box-shadow:var(--shadow)
}
.map-placeholder{
  width:min(78%, 340px);aspect-ratio:1/1;border-radius:50%;
  border:1px dashed rgba(0,54,93,.28);display:grid;place-items:center;text-align:center;
  color:var(--primary);background:rgba(255,255,255,.7)
}
.map-placeholder span{font-size:1.3rem;font-weight:800}
.map-placeholder small{display:block;margin-top:10px;color:var(--muted)}

.contact-section{
  padding-top:36px;padding-bottom:96px
}
.contact-box{
  background:#fff;border:1px solid var(--line);border-radius:28px;padding:38px;
  box-shadow:var(--shadow);display:flex;align-items:center;justify-content:space-between;gap:24px
}
.contact-actions{display:flex;flex-wrap:wrap;gap:14px}
.contact-section .btn-secondary{
  color:var(--primary);background:#eef4f8;border:1px solid var(--line)
}

.brand-strip{
  background:var(--soft);padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)
}
.brand-strip-inner{
  display:flex;align-items:center;justify-content:space-between;gap:24px
}
.brand-strip img{height:46px;width:auto;object-fit:contain}

.site-footer{background:#fff;padding:22px 0 40px}
.footer-inner{
  display:flex;flex-direction:column;gap:14px;align-items:center;text-align:center
}
.footer-logo{height:48px;width:auto;object-fit:contain}
.site-footer p{margin:0;color:var(--muted);font-weight:600}

.lightbox{
  position:fixed;inset:0;background:rgba(0,0,0,.86);display:none;align-items:center;justify-content:center;z-index:3000;padding:24px
}
.lightbox.open{display:flex}
.lightbox-image{
  max-width:min(1200px, 94vw);max-height:86vh;border-radius:18px;box-shadow:0 22px 60px rgba(0,0,0,.34)
}
.lightbox-close{
  position:absolute;top:18px;right:20px;width:48px;height:48px;border-radius:50%;border:0;
  background:#fff;color:#111;font-size:32px;cursor:pointer;line-height:1
}

.reveal{
  opacity:0;transform:translateY(18px);transition:opacity .7s ease, transform .7s ease
}
.reveal.visible{opacity:1;transform:none}

@media (max-width: 1024px){
  .hero-highlights{grid-template-columns:repeat(2,minmax(0,1fr))}
  .split,.lifestyle-grid,.investment-block,.location-grid{grid-template-columns:1fr}
  .stats-grid,.floor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media (max-width: 780px){
  .menu-toggle{display:block}
  .nav{
    position:absolute;left:16px;right:16px;top:76px;background:#fff;border:1px solid var(--line);border-radius:18px;
    box-shadow:var(--shadow);padding:18px;display:none;flex-direction:column;align-items:flex-start
  }
  .nav.open{display:flex}
  .hero{min-height:92svh}
  .hero-content{padding-top:116px;padding-bottom:34px}
  .hero-highlights{grid-template-columns:1fr}
  .stats-grid,.floor-grid,.gallery-grid{grid-template-columns:1fr}
  .gallery-large{grid-column:span 1;grid-row:span 1;min-height:240px}
  .contact-box,.brand-strip-inner{flex-direction:column;align-items:flex-start}
  .brand-strip img{height:38px}
}

@media (max-width: 560px){
  .section{padding:74px 0}
  .header-inner{min-height:76px}
  .brand-logo{height:36px}
  .hero h1{font-size:2.2rem}
  .btn{width:100%}
  .hero-actions,.location-actions,.contact-actions{width:100%}
  .summary-image img,.floor-card img,.lifestyle-panel img{height:auto}
  .contact-box{padding:26px}
}
