:root{
  --ink:#07100e;
  --ink-2:#101a17;
  --teal:#14d6b4;
  --teal-dark:#008f78;
  --yellow:#f4c84a;
  --cream:#f5f2ea;
  --paper:#fbfaf7;
  --white:#fff;
  --muted:#65706c;
  --line:#dfe5e1;
  --max:1180px;
  --shadow:0 24px 70px rgba(7,16,14,.12);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased}
body.no-scroll{overflow:hidden}
a{color:inherit;text-decoration:none}
button{font:inherit}
img{display:block;max-width:100%}
.site-header{height:82px;padding:0 max(4%,calc((100% - var(--max))/2));display:flex;align-items:center;justify-content:space-between;background:rgba(7,16,14,.97);color:#fff;position:sticky;top:0;z-index:100;border-bottom:1px solid rgba(20,214,180,.18);backdrop-filter:blur(12px)}
.brand{display:block;line-height:0}.brand img{height:62px;width:auto}
.nav{display:flex;align-items:center;gap:25px;font-size:13px;font-weight:700}.nav a{opacity:.82;transition:.2s}.nav a:hover{color:var(--teal);opacity:1}.nav-cta{background:var(--teal);color:#03110e!important;padding:11px 18px;border-radius:999px;opacity:1!important}
.menu-toggle{display:none;width:44px;height:44px;border:1px solid #2b3834;background:transparent;border-radius:12px;cursor:pointer}.menu-toggle span{display:block;width:20px;height:2px;background:#fff;margin:4px auto;transition:.2s}
.hero{min-height:760px;position:relative;display:flex;align-items:center;overflow:hidden;color:#fff}.hero-bg{position:absolute;inset:0;background:url('assets/building-sunset.jpg') center/cover no-repeat;transform:scale(1.03)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.63) 48%,rgba(0,0,0,.18) 100%)}.hero-content{position:relative;z-index:2;width:min(var(--max),90%);margin:auto;padding:95px 0 110px}.eyebrow{font-size:11px;letter-spacing:.2em;font-weight:800;color:var(--teal);display:inline-block}.eyebrow.dark{color:var(--teal-dark)}
.hero h1{font-family:'Playfair Display',Georgia,serif;font-size:clamp(48px,6.2vw,76px);line-height:1.02;letter-spacing:-.035em;margin:18px 0 18px;max-width:850px}.hero h1 em{font-style:normal;color:var(--yellow)}.hero-lead{font-size:22px!important;font-weight:700;color:#fff!important;margin:0 0 8px!important}.hero p{max-width:680px;font-size:17px;color:#e5ebe8;margin:0}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:32px 0 22px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;border-radius:999px;padding:14px 21px;font-weight:800;font-size:13px;transition:transform .2s,box-shadow .2s,background .2s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--teal);color:#03110e;box-shadow:0 10px 25px rgba(20,214,180,.15)}.btn-glass{border:1px solid rgba(255,255,255,.42);color:#fff;background:rgba(255,255,255,.08);backdrop-filter:blur(7px)}.btn-dark{background:var(--ink);color:#fff}.hero-note{font-size:12px;color:#d1d9d6}.hero-note span{color:var(--teal)}.scroll-cue{position:absolute;z-index:3;bottom:25px;left:50%;transform:translateX(-50%);font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#d7dedb;display:flex;gap:9px;align-items:center}.scroll-cue span{font-size:16px;color:var(--teal)}
.quick-info{display:grid;grid-template-columns:repeat(4,1fr);background:var(--ink);color:#fff}.quick-info>div{padding:25px 15px;text-align:center;border-right:1px solid #26302d}.quick-info>div:last-child{border:0}.quick-info strong{display:block;font-size:26px;color:var(--yellow);line-height:1.2}.quick-info span{font-size:11px;color:#b7c2be}
.section{width:min(var(--max),90%);margin:auto;padding:105px 0}.section-heading{max-width:760px}.section-heading.centered{text-align:center;margin-left:auto;margin-right:auto}.section-heading h2,.section h2,.contact-section h2,.rules-section h2{font-family:'Playfair Display',Georgia,serif;font-size:clamp(38px,4.4vw,56px);line-height:1.06;letter-spacing:-.025em;margin:14px 0 18px}.section-heading p,.section-copy>p{color:var(--muted);font-size:15.5px;margin:0}
.intro-section{padding-top:90px}.choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:44px}.choice-card{position:relative;border:1px solid var(--line);border-radius:22px;padding:32px;background:#fff;min-height:270px;overflow:hidden}.choice-card.featured{background:var(--ink);color:#fff;border-color:var(--ink)}.choice-number{position:absolute;right:24px;top:18px;font-family:'Playfair Display',serif;font-size:52px;color:#edf1ef}.featured .choice-number{color:#1e2a26}.card-kicker{font-size:10px;letter-spacing:.16em;font-weight:800;color:var(--teal-dark)}.featured .card-kicker{color:var(--teal)}.choice-card h3{font-family:'Playfair Display',serif;font-size:30px;line-height:1.1;max-width:450px;margin:14px 0}.choice-card p{color:var(--muted);font-size:14px;max-width:500px}.featured p{color:#b6c2bd}.choice-card a{display:inline-flex;gap:9px;margin-top:13px;font-weight:800;font-size:13px}.choice-card a span{color:var(--teal-dark)}.featured a span{color:var(--teal)}
.split-section{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.price-card{border-left:4px solid var(--teal);padding:10px 20px;margin:28px 0;background:#f1f7f4}.price-card span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-weight:800}.price-card strong{display:block;font-size:38px;line-height:1.25}.price-card small{font-size:14px;color:var(--muted);font-weight:500}.feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:28px 0}.feature-grid>div{display:flex;gap:11px;align-items:flex-start;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fff}.feature-grid b{font-size:11px;color:var(--teal-dark);letter-spacing:.04em}.feature-grid span{font-size:13px;font-weight:800;line-height:1.25}.feature-grid small{font-weight:400;color:var(--muted)}.check-times{display:flex;gap:32px;margin:24px 0 28px;padding:15px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.check-times div{display:flex;flex-direction:column}.check-times span{font-size:9px;letter-spacing:.13em;font-weight:800;color:var(--muted)}.check-times strong{font-size:17px}
.photo-stack{position:relative;min-height:600px}.photo-main{width:82%;height:600px;object-fit:cover;border-radius:28px;box-shadow:var(--shadow)}.photo-small{position:absolute;width:48%;height:245px;object-fit:cover;right:0;bottom:-8px;border:9px solid var(--paper);border-radius:24px;box-shadow:0 15px 45px rgba(0,0,0,.17)}.photo-label{position:absolute;left:25px;bottom:28px;background:rgba(7,16,14,.88);color:#fff;padding:12px 16px;border-radius:12px;backdrop-filter:blur(8px)}.photo-label span{display:block;font-size:9px;letter-spacing:.15em;color:var(--teal);font-weight:800}.photo-label strong{font-size:13px}
.dark-section{background:var(--ink);color:#fff;padding:105px max(5%,calc((100% - var(--max))/2))}.dark-section .section-heading{margin-bottom:42px}.dark-section .section-heading p{color:#b8c4c0;margin-left:auto;margin-right:auto}.apartment-card{display:grid;grid-template-columns:1.02fr .98fr;background:#111a17;border:1px solid #293631;border-radius:28px;overflow:hidden;max-width:1120px;margin:auto}.apartment-photo{position:relative;min-height:540px}.apartment-photo img{width:100%;height:100%;min-height:540px;object-fit:cover}.photo-badge{position:absolute;left:22px;bottom:22px;background:var(--yellow);color:#15140b;padding:9px 12px;border-radius:999px;font-size:9px;letter-spacing:.12em;font-weight:900}.apartment-info{padding:58px}.tag{font-size:10px;letter-spacing:.16em;color:var(--teal);font-weight:800}.apartment-info h3{font-family:'Playfair Display',serif;font-size:46px;line-height:1.05;margin:13px 0 17px}.apartment-info>p{color:#b9c4c0;font-size:15px}.rent-details{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:28px 0 18px}.rent-details div{border:1px solid #33413b;padding:14px;border-radius:12px}.rent-details span{display:block;font-size:9px;letter-spacing:.08em;color:#8f9c97}.rent-details strong{font-size:17px;color:#fff}.availability-note{font-size:12px!important;color:#899691!important;margin-bottom:24px!important}
.amenities-section{padding-bottom:95px}.amenity-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:42px}.amenity-grid article{border:1px solid var(--line);border-radius:18px;padding:28px;min-height:190px;background:#fff}.icon{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#e8f7f3;color:var(--teal-dark);font-weight:900;font-size:19px}.amenity-grid h3{margin:13px 0 5px;font-size:17px}.amenity-grid p{margin:0;color:var(--muted);font-size:13.5px}
.gallery-section{background:var(--cream);padding:105px 5%}.gallery-section .section-heading{margin-bottom:42px}.gallery{max-width:1250px;margin:auto;display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:225px;gap:11px}.gallery-item{position:relative;border:0;padding:0;overflow:hidden;border-radius:14px;background:#ddd;cursor:pointer}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease,filter .45s ease}.gallery-item:hover img{transform:scale(1.045);filter:brightness(.85)}.gallery-item::after{content:'＋';position:absolute;right:13px;bottom:11px;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:rgba(7,16,14,.75);color:#fff;font-size:18px;opacity:0;transition:.25s}.gallery-item:hover::after{opacity:1}.gallery-item.large{grid-column:span 2;grid-row:span 2}.gallery-item.tall{grid-row:span 2}
.location-section{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.address{font-weight:800;font-size:18px;line-height:1.5}.nearby{display:grid;gap:9px;margin:25px 0 30px}.nearby div{display:flex;gap:11px;align-items:flex-start;font-size:13px}.nearby span{color:var(--teal-dark);font-weight:900;font-size:10px;letter-spacing:.08em;padding-top:3px}.nearby strong{font-weight:600}.location-image{position:relative}.location-image>img{width:100%;height:540px;object-fit:cover;border-radius:26px}.location-card{position:absolute;left:22px;bottom:22px;background:rgba(255,255,255,.94);padding:17px 19px;border-radius:14px;box-shadow:0 15px 35px rgba(0,0,0,.12)}.location-card span{display:block;font-size:9px;letter-spacing:.14em;color:var(--teal-dark);font-weight:900}.location-card strong{display:block;font-size:14px;line-height:1.35}
.faq-section{background:#fff;padding:100px 5%}.faq-list{max-width:850px;margin:38px auto 0;border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;padding:21px 3px;font-size:16px;font-weight:800;display:flex;justify-content:space-between;gap:20px}summary::-webkit-details-marker{display:none}summary::after{content:'+';font-size:22px;color:var(--teal-dark);font-weight:500;transition:transform .2s}details[open] summary::after{content:'−'}details p{margin:-5px 40px 20px 3px;color:var(--muted);font-size:14px}
.rules-section{background:linear-gradient(115deg,#0eb99e,#15d6b4);padding:70px max(5%,calc((100% - var(--max))/2));display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.rules-section .eyebrow{color:#06382f}.rules-section h2{margin:12px 0 0}.rules{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.rules div{background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.34);padding:19px;border-radius:14px}.rules strong{display:block;font-size:18px}.rules span{font-size:11px}
.contact-section{background:#050a08;color:#fff;padding:95px 5%}.contact-inner{width:min(var(--max),100%);margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.contact-section h2{font-size:clamp(42px,5vw,60px);max-width:600px}.contact-section p{color:#b6c1bd;max-width:520px}.contact-actions{display:grid;gap:10px}.contact-btn{display:flex;gap:14px;align-items:center;border:1px solid #293531;padding:16px 18px;border-radius:14px;transition:.2s}.contact-btn:hover{border-color:var(--teal);transform:translateX(3px)}.contact-btn>span{width:39px;height:39px;flex:0 0 39px;border-radius:50%;display:grid;place-items:center;background:var(--teal);color:#00100c;font-weight:900}.contact-btn small{display:block;color:#7f8c87;font-size:9px;letter-spacing:.13em}.contact-btn strong{font-size:14px}.contact-btn b{margin-left:auto;color:var(--teal);font-size:18px}
footer{background:#030706;color:#899590;padding:42px max(5%,calc((100% - var(--max))/2)) 22px;border-top:1px solid #1b2521}.footer-inner{display:grid;grid-template-columns:180px 1fr auto;gap:30px;align-items:center}.footer-inner img{width:165px}.footer-inner strong{color:#fff;font-size:13px}.footer-inner p{margin:3px 0;font-size:12px}.back-top{font-size:11px;color:var(--teal);font-weight:800}.copyright{margin-top:35px;padding-top:17px;border-top:1px solid #1b2521;text-align:center;font-size:10px}
.lightbox{position:fixed;inset:0;z-index:300;background:rgba(0,0,0,.92);display:none;align-items:center;justify-content:center;padding:35px}.lightbox.open{display:flex}.lightbox img{max-width:min(1100px,92vw);max-height:84vh;object-fit:contain;border-radius:8px}.lightbox p{position:absolute;bottom:12px;left:0;right:0;text-align:center;color:#fff;font-size:12px;padding:0 70px}.lightbox-close{position:absolute;right:24px;top:17px;background:transparent;border:0;color:#fff;font-size:42px;cursor:pointer;line-height:1}
@media(max-width:900px){.site-header{height:74px;padding:0 5%}.brand img{height:54px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:74px;left:0;right:0;background:#07100e;padding:15px 5%;flex-direction:column;align-items:stretch;gap:2px;box-shadow:0 18px 30px rgba(0,0,0,.2)}.nav.open{display:flex}.nav a{padding:12px}.nav-cta{text-align:center}.hero{min-height:690px}.hero-content{padding:75px 0}.hero h1{font-size:55px}.quick-info{grid-template-columns:repeat(2,1fr)}.quick-info>div{border-bottom:1px solid #26302d}.quick-info>div:nth-child(2){border-right:0}.split-section,.location-section,.contact-inner,.rules-section{grid-template-columns:1fr;gap:45px}.photo-stack{min-height:540px}.photo-main{height:540px}.apartment-card{grid-template-columns:1fr}.apartment-photo,.apartment-photo img{min-height:430px;max-height:520px}.amenity-grid{grid-template-columns:repeat(2,1fr)}.gallery{grid-template-columns:repeat(2,1fr);grid-auto-rows:205px}.gallery-item.large{grid-column:span 2;grid-row:span 1}.gallery-item.tall{grid-row:span 1}.footer-inner{grid-template-columns:150px 1fr}.back-top{grid-column:1/-1}.contact-section{padding-top:75px;padding-bottom:75px}}
@media(max-width:560px){.hero{min-height:680px}.hero-content{padding-top:65px}.hero h1{font-size:44px}.hero-lead{font-size:19px!important}.hero p{font-size:15px}.hero-actions{display:grid}.btn{width:100%}.scroll-cue{display:none}.section,.dark-section{padding-top:78px;padding-bottom:78px}.intro-section{padding-top:72px}.choice-grid,.amenity-grid{grid-template-columns:1fr}.choice-card{min-height:auto}.feature-grid{grid-template-columns:1fr}.photo-stack{min-height:470px}.photo-main{height:470px;width:88%}.photo-small{height:200px;width:52%;right:-2px}.photo-label{left:15px;bottom:20px}.rent-details{grid-template-columns:1fr}.apartment-info{padding:36px 25px}.apartment-info h3{font-size:39px}.gallery{grid-template-columns:1fr;grid-auto-rows:245px}.gallery-item.large{grid-column:span 1}.location-image>img{height:450px}.location-card{left:14px;bottom:14px}.rules{grid-template-columns:1fr}.rules-section{padding-top:55px;padding-bottom:55px}.contact-section h2{font-size:43px}.footer-inner{grid-template-columns:1fr;text-align:center}.footer-inner img{margin:auto}.back-top{grid-column:auto}.copyright{margin-top:25px}}
