*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:#fff;color:#181818;font-family:Arial,Helvetica,sans-serif;}
a{color:inherit;text-decoration:none;}
nav{height:84px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #eee;background:#fff;position:sticky;top:0;z-index:10;}
.brand{font-size:12px;font-weight:700;letter-spacing:.23em;}
.navlinks{display:flex;gap:27px;align-items:center;}
.navlinks a{font-size:10px;letter-spacing:.16em;}
.lux{font-size:12px;letter-spacing:.08em;border-left:1px solid #ddd;padding-left:22px;font-weight:600;}
.hero{display:grid;grid-template-columns:40% 60%;min-height:690px;}
.hero-copy{padding:12% 9% 11% 12%;display:flex;flex-direction:column;justify-content:center;}
.eyebrow{font-size:10px;letter-spacing:.28em;color:#777;}
.hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(52px,5.5vw,92px);font-weight:400;letter-spacing:-.045em;line-height:1.04;margin:28px 0 20px;}
.hero p,.copy p{font-family:Georgia,serif;font-size:17px;line-height:1.75;color:#606060;max-width:480px;}
.hero-media{}
.btn{display:inline-block;border:1px solid #333;padding:18px 22px;font-size:10px;letter-spacing:.16em;margin-top:22px;transition:.2s;}
.btn:hover{background:#111;color:white;}
.stats{padding:28px 6%;display:flex;justify-content:space-around;align-items:center;border-block:1px solid #eaeaea;gap:15px;}
.stat{text-align:center;}
.stat strong{display:block;font:30px Georgia,serif;font-weight:400;}
.stat small{font-size:9px;letter-spacing:.18em;}
.statement{padding:95px 7%;text-align:center;font:clamp(32px,4vw,57px) Georgia,serif;letter-spacing:-.035em;}
.section{display:grid;grid-template-columns:42% 58%;}
.section.reverse{grid-template-columns:58% 42%;}
.section.reverse .copy{order:2;}
.section .copy{padding:11%;display:flex;flex-direction:column;justify-content:center;}
.section h2{font:clamp(38px,4.5vw,68px)/1.08 Georgia,serif;font-weight:400;letter-spacing:-.04em;margin:23px 0;}
.filters{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:28px;}
.filters button{padding:11px 13px;background:#fff;border:1px solid #ddd;font-size:10px;letter-spacing:.08em;cursor:pointer;}
.filters button.active{background:#111;color:white;}
.photo{border:0;background:white;text-align:left;padding:0;cursor:pointer;}
.photo span{display:block;font-size:10px;letter-spacing:.13em;padding:12px 0 6px;}
.details{padding:90px 7%;background:#fafafa;}
.details h2,.contact h2{font:clamp(42px,5vw,70px) Georgia,serif;font-weight:400;}
.details li{padding:12px 0;line-height:1.6;}
.contact{padding:90px 7%;display:grid;grid-template-columns:1fr 1fr;gap:12%;}
.contact p{line-height:1.8;color:#555;}
footer{padding:35px 7%;border-top:1px solid #ddd;font-size:11px;line-height:1.8;color:#555;}
.lightbox{display:none;position:fixed;inset:0;z-index:50;background:#101010ed;align-items:center;justify-content:center;padding:50px;}
.lightbox.open{display:flex;}
.lightbox img{max-width:100%;max-height:100%;object-fit:contain;}
.lightbox button{position:absolute;right:20px;top:15px;font-size:35px;color:white;border:0;background:none;cursor:pointer;}
@media  (max-width:850px){nav{height:70px;}
.navlinks{display:none;}
.hero,.section,.section.reverse,.contact{grid-template-columns:1fr;}
.hero-copy{padding:70px 7%;}
.hero-media{min-height:0;height:430px;}
.section .copy,.section.reverse .copy{order:0;padding:70px 7%;}
.stats{flex-wrap:wrap;}
.lux{font-size:10px;}
.statement{padding:70px 6%;}}
@media  (max-width:520px){.hero h1{font-size:56px;}
.stats{justify-content:space-between;}
.stat{width:40%;}}
.closing-caption{position:absolute;bottom:26px;right:4%;color:white;letter-spacing:.22em;font:500 10px/1.6 Arial,sans-serif;text-shadow:0 1px 8px #0009;}
@media  (max-width:700px){.closing-caption{bottom:12px;right:14px;font-size:8px;}}
.brand{font-size:clamp(17px,1.75vw,25px)!important;letter-spacing:.13em!important;font-weight:700!important;white-space:nowrap;}
nav{min-height:90px;height:auto;gap:18px;}
.navlinks{flex-wrap:wrap;justify-content:flex-end;}
.wellness-feature{background:#f8f7f5;}
.feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 36px;text-align:left;margin:36px auto;max-width:1080px;}
.feature-item{border-top:1px solid #d7d7d7;padding-top:18px;}
.feature-item h3{font:600 11px/1.5 Arial,sans-serif;letter-spacing:.18em;margin:0 0 10px;}
.feature-item p{font:15px/1.7 Georgia,serif;color:#565656;margin:0;}
.property-disclaimer{font:12px/1.7 Arial,sans-serif!important;color:#777!important;max-width:1000px;margin:28px auto!important;}
@media  (max-width:760px){.brand{font-size:17px!important;}
.feature-grid{grid-template-columns:1fr;}
.navlinks{gap:10px;}
.wellness-feature{display:flex;flex-direction:column;}}
nav .brand{font-family: "Bodoni MT", "Didot", "Times New Roman", Georgia, serif!important;font-size:clamp(25px,2.5vw,39px)!important;font-weight:400!important;letter-spacing:.085em!important;line-height:1.08!important;text-transform:uppercase!important;white-space:nowrap!important;}
@media  (max-width:850px){nav .brand{font-size:clamp(23px,5vw,32px)!important;letter-spacing:.055em!important;}}
.plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:34px 0 45px;}
.plan-card{background:white;padding:18px;border:1px solid #e9e7e4;}
.plan-card h3{font:400 23px Georgia,serif;margin:0 0 16px;}
.plan-card p{font-size:12px;color:#777;}
.sketch-plan{display:block;width:min(100%,860px);margin:22px auto;cursor:zoom-in;background:white;}
@media  (max-width:800px){.plan-grid{grid-template-columns:1fr;}}
.kw-logo-nav{width:132px;height:auto;object-fit:contain;vertical-align:middle;display:block;}
.kw-logo-contact{display:block;width:min(245px,85%);height:auto;margin-top:22px;}
#floor-plans{scroll-margin-top:88px;}
#details{scroll-margin-top:88px;}
@media  (max-width:850px){.kw-logo-nav{width:96px;}
.kw-logo-contact{width:180px;}}
.editorial-triptych{padding:92px clamp(22px,5vw,90px) 100px;background:#fff;}
.triptych-intro{margin-bottom:35px;}
.triptych-intro span,.triptych-caption span{font:600 10px/1.4 Arial,sans-serif;letter-spacing:.25em;color:#777;}
.triptych-intro h2{font:normal clamp(36px,4.8vw,68px)/1.1 Georgia,serif;letter-spacing:-.04em;margin:14px 0 0;}
.triptych-caption{padding:23px 3px 0;}
.triptych-caption h3{font:normal clamp(22px,2vw,31px)/1.2 Georgia,serif;margin:10px 0;}
.triptych-caption p{font:15px/1.7 Georgia,serif;color:#666;margin:0;max-width:340px;}
@media  (max-width:720px){.editorial-triptych{padding:55px 20px;}}
.hero h1{font-size:clamp(3.4rem,5.1vw,6.8rem)!important;}
.brand{font-family:"Avenir Next","Helvetica Neue",Arial,sans-serif!important;font-weight:300!important;letter-spacing:.15em!important;}
.kw-logo-nav{display:none!important;}
.contact .kw-logo-contact{display:none!important;}
.contact{align-items:start;}
.contact .btn{margin-top:22px;}
.footer-logo-wrap{display:flex;justify-content:flex-end;align-items:center;margin:0 0 18px auto;max-width:260px;}
.footer-logo-wrap img{width:100%;height:auto;object-fit:contain;}
.editorial-copy-block{padding:42px max(5vw,24px);background:#fff;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:center;border-top:1px solid #eee;}
.editorial-copy-block h2{font-family:"Avenir Next","Helvetica Neue",Arial,sans-serif;font-weight:300;font-size:clamp(2.2rem,4.5vw,4.7rem);letter-spacing:-.045em;line-height:1.08;margin:12px 0;}
.editorial-copy-block p{max-width:490px;line-height:1.8;color:#555;}
@media  (max-width:750px){.editorial-copy-block{grid-template-columns:1fr;gap:20px;}}
:root{--editorial-font:"Helvetica Neue","Avenir Next","Helvetica",Arial,sans-serif;}
nav .brand{font-size:clamp(25px,2.5vw,39px)!important;letter-spacing:.015em!important;font-weight:300!important;}
.hero h1{font-size:clamp(3.25rem,5.1vw,6.8rem)!important;line-height:1.08!important;}
@media  (max-width:850px){nav .brand{font-size:clamp(22px,4vw,32px)!important;}}
.editorial-contact-left{padding:0 9% 20px 0;}
.editorial-contact-right{border-left:1px solid #ddd;padding:0 0 20px 10%;display:flex;flex-direction:column;justify-content:center;}
#contact h2{font-size:clamp(36px,4.3vw,75px)!important;line-height:1.1!important;margin:20px 0!important;}
#contact p{font-size:clamp(15px,1.2vw,19px)!important;line-height:1.8!important;}
.contact-kw-logo{display:block!important;object-fit:contain!important;object-position:left center!important;width:215px!important;max-width:75%!important;height:auto!important;margin:30px 0 0!important;border:0!important;box-shadow:none!important;background:transparent!important;padding:0!important;}
.editorial-contact-action{text-align:center;padding:15px 5vw 70px;border-bottom:1px solid #e8e8e8;}
.editorial-contact-action .btn{display:inline-block;padding:18px 30px;}
.editorial-contact-action p{font:12px/1.8 Arial,sans-serif;color:#777;margin:38px auto 0;max-width:850px;}
.section,.wellness-feature{padding-top:105px!important;padding-bottom:105px!important;}
@media  (max-width:760px){#contact.contact{grid-template-columns:1fr!important;padding:60px 6vw 25px!important;}
.editorial-contact-right{border-left:0;border-top:1px solid #ddd;padding:35px 0 0;}
.editorial-contact-left{padding:0 0 35px;}
.editorial-contact-action{padding-bottom:50px;}
.section,.wellness-feature{padding-top:55px!important;padding-bottom:55px!important;}}
:root{--editorial-font:"Avenir Next","Helvetica Neue",Arial,sans-serif!important;}
body{background:#fff!important;color:#252525!important;}
.hero h1{font-size:clamp(60px,6.3vw,112px)!important;line-height:1.02!important;}
.eyebrow{letter-spacing:.28em!important;font-size:11px!important;}
.section p,.editorial-copy-block p{line-height:1.85!important;}
#editorial-chapters{max-width:1450px;margin:0 auto;padding:36px 5vw 80px;}
.new-chapter{padding:75px 0 85px;border-bottom:1px solid #e9e7e4;}
.chapter-copy{max-width:820px;margin:0 auto 36px;text-align:center;}
.chapter-copy h2{font-size:clamp(40px,5vw,82px);font-weight:350;line-height:1.1;letter-spacing:-.035em;margin:14px 0 20px;}
.chapter-copy p{font-size:clamp(16px,1.35vw,21px);line-height:1.65;color:#5d5d5d;margin:auto;max-width:670px;}
#gallery .photo{aspect-ratio:1.4;}
#details p,#details li,#details .feature,#details .detail{font-size:clamp(15px,1.25vw,19px);line-height:1.7;}
.contact-rebuilt{display:block!important;max-width:1400px;margin:auto;padding:90px 5vw 60px!important;background:white;color:#242424;}
.contact-columns{display:grid;grid-template-columns:minmax(0,42fr) minmax(0,58fr);gap:0;align-items:center;}
.contact-invite{padding:40px 9% 40px 0;}
.contact-invite h2{font-size:clamp(42px,5vw,80px);line-height:1.08;font-weight:350;margin:18px 0 22px;letter-spacing:-.04em;}
.contact-invite p{font-size:18px;color:#666;}
.contact-agent{border-left:1px solid #d6d6d6;padding:28px 0 28px 12%;display:flex;align-items:flex-start;flex-direction:column;gap:10px;}
.contact-agent h2{font-size:clamp(34px,3.5vw,54px);font-weight:350;line-height:1.1;margin:12px 0 10px;}
.contact-agent p{font-size:15px;margin:0;color:#555;}
@media  (min-width:781px){.contact-agent .broker-affiliation{white-space:nowrap;}}
.contact-agent a{font-size:17px;color:#252525;text-decoration:none;}
.contact-agent .agent-logo{width:210px;max-width:85%;height:auto;object-fit:contain;margin:26px 0 0;border:0!important;background:transparent!important;box-shadow:none!important;padding:0!important;}
.contact-cta{text-align:center;padding:46px 0 30px;}
.contact-button{display:inline-block;padding:17px 30px;background:#1e1e1e;color:white!important;text-decoration:none;font-size:12px;letter-spacing:.14em;}
.contact-offices{font-size:12px!important;color:#777;text-align:center;line-height:1.7;margin:0;}
@media  (max-width:700px){.contact-columns{grid-template-columns:1fr;}
.contact-invite{padding:25px 0;}
.contact-agent{border-left:0;border-top:1px solid #ddd;padding:28px 0;}
.new-chapter{padding:40px 0;}}
.chapter-copy h2,.contact-invite h2{font-family:"Avenir Next","Helvetica Neue",Arial,sans-serif;font-weight:300;}
.contact-rebuilt .contact-cta{text-align:left!important;width:50%;padding:22px 0 30px!important;margin:0!important;}
.contact-rebuilt .contact-button{border-radius:0!important;display:inline-block;text-align:center;}
@media  (max-width:700px){.contact-rebuilt .contact-cta{width:100%;padding-top:22px!important;}}
.chapter-suite{padding-top:95px;padding-bottom:95px;}
.suite-label{position:absolute;left:16px;bottom:16px;background:rgba(255,255,255,.9);color:#333;font:500 10px/1.4 Arial,sans-serif;letter-spacing:.13em;text-transform:uppercase;padding:9px 12px;pointer-events:none;}
.wellness-feature.section{display:block!important;max-width:1200px;margin:0 auto;padding:90px 28px;text-align:center;}
.wellness-feature .eyebrow{margin-bottom:14px;}
.wellness-feature h2{font-family:"Avenir Next","Helvetica Neue",Arial,sans-serif;font-size:clamp(40px,5vw,82px);font-weight:300;letter-spacing:-.035em;line-height:1.1;color:#252525;text-align:center;margin:0 auto 35px;max-width:900px;}
.wellness-feature .wellness-description{max-width:800px;margin:34px auto 0!important;text-align:center;font-size:clamp(16px,1.35vw,21px);line-height:1.65!important;color:#5d5d5d;}
@media  (max-width:720px){.wellness-feature.section{padding:65px 20px;}
.wellness-description{margin-top:25px!important;}}
.enlarged-location{font-size:clamp(15px,1.5vw,21px)!important;letter-spacing:.16em!important;}
.enlarged-life{font-size:clamp(38px,4.8vw,72px)!important;line-height:1.08!important;}
.editorial-room{padding:90px max(24px,calc((100vw - 1260px)/2));background:#fff;}
.editorial-room-copy{max-width:780px;margin:0 auto 36px;text-align:center;}
.editorial-room-copy h2{font-family:"Avenir Next","Helvetica Neue",Arial,sans-serif;font-size:clamp(40px,5vw,82px);font-weight:300;letter-spacing:-.035em;line-height:1.1;color:#252525;text-align:center;margin:14px 0 18px;}
.editorial-room .editorial-room-copy p{font-size:clamp(16px,1.35vw,21px);line-height:1.65!important;color:#5d5d5d;text-align:center;max-width:670px;}
.details .feature-grid,.details .detail-grid{font-size:clamp(16px,1.25vw,20px);}
@media  (max-width:760px){.editorial-room{padding:60px 20px;}}
.enlarged-location{font-size:clamp(13px,1.1vw,16px)!important;}
.enlarged-life{font-size:clamp(48px,6vw,92px)!important;}
.editorial-room,.new-chapter,.wellness-feature.section{padding-top:52px!important;padding-bottom:52px!important;}
.editorial-room-copy{margin-bottom:18px!important;}
.editorial-room.utility h2{white-space:nowrap;}
#primary-suite .chapter-copy{margin-bottom:10px!important;}
@media  (max-width:760px){.editorial-room.utility h2{white-space:normal;}}
.new-chapter,.editorial-room,.wellness-feature.section{padding-top:64px!important;padding-bottom:64px!important;}
.inquiry-form{max-width:560px;margin:28px auto;display:grid;grid-template-columns:1fr 1fr;gap:12px;text-align:left;}
.inquiry-form label{display:flex;flex-direction:column;gap:5px;font-size:14px;}
.inquiry-form label:has(textarea){grid-column:1/-1;}
.inquiry-form input,.inquiry-form textarea{padding:12px;border:1px solid #aaa;border-radius:0;background:#fff;color:#222;font:inherit;}
.inquiry-form button{grid-column:1/-1;padding:15px;background:#222;color:#fff;border:0;cursor:pointer;}
.honeypot{position:absolute;left:-9999px;}
@media  (max-width:750px){.inquiry-form{grid-template-columns:1fr;}
.inquiry-form label{grid-column:1/-1;}}
#primary-suite .chapter-copy{margin-bottom:0!important;}
.new-chapter,.editorial-room,.wellness-feature.section{padding-top:55px!important;padding-bottom:55px!important;}
.new-chapter .chapter-copy,.editorial-room .editorial-room-copy{margin-bottom:22px!important;}
.contact-rebuilt{padding-top:70px!important;}
.contact-rebuilt .agent-logo{border:0!important;box-shadow:none!important;background:transparent!important;max-width:230px!important;height:auto!important;object-fit:contain!important;}
.contact-rebuilt .contact-agent{min-width:0;}
.contact-rebuilt .contact-agent a{overflow-wrap:anywhere;}
@media  (max-width:780px){.contact-rebuilt .contact-columns{grid-template-columns:1fr!important;gap:30px!important;}}
.editorial-room.guests .full-width-feature,.editorial-room.utility .full-width-feature{grid-column:1/-1!important;}
@media  (max-width:700px){.editorial-room.guests .full-width-feature,.editorial-room.utility .full-width-feature{grid-column:auto!important;}}
#primary-suite .chapter-copy{margin-bottom:22px!important;}
:root{--gallery-gutter:16px;--editorial-width:1300px}
@media (max-width:700px){.new-chapter .chapter-photos,.chapter-suite .suite-photos,
 .editorial-room .editorial-room-grid,.editorial-room.aerial .editorial-room-grid,
 .wellness-feature .wellness-triptych,.editorial-triptych .triptych-grid,.gallery{
 grid-template-columns:minmax(0,1fr)}
.chapter-0 .chapter-photo:first-child,.editorial-room .full-width-feature,
 .chapter-suite .closet-finale{grid-column:auto}}

/* ARCHITECTURAL PHOTOGRAPHY — SINGLE GALLERY SYSTEM */
:root { --gallery-gutter: 16px; }
.hero { min-height: 0; align-items: center; }
.hero-media { min-height: 0; overflow: visible; }
.hero-media img, .section img:not(.agent-logo),
.new-chapter .chapter-photo img, .editorial-room .editorial-room-photo img,
.wellness-feature .wellness-photo img, .editorial-triptych .triptych-card img,
.closing-photograph img, .gallery .photo img {
 display:block; width:100%; max-width:100%; height:auto;
 object-fit:initial; aspect-ratio:auto; transform:none; filter:none;
}
.new-chapter .chapter-photos, .chapter-suite .suite-photos,
.editorial-room .editorial-room-grid, .wellness-feature .wellness-triptych,
.editorial-triptych .triptych-grid, .gallery {
 display:grid; gap:var(--gallery-gutter); grid-auto-rows:auto;
 grid-auto-flow:row; align-items:start;
}
.new-chapter .chapter-photos, .chapter-suite .suite-photos,
.editorial-room .editorial-room-grid, .editorial-triptych .triptych-grid {
 grid-template-columns:repeat(2,minmax(0,1fr));
}
.wellness-feature .wellness-triptych, .gallery {
 grid-template-columns:repeat(3,minmax(0,1fr));
}
.new-chapter .chapter-photo, .editorial-room .editorial-room-photo,
.wellness-feature .wellness-photo, .editorial-triptych .triptych-card,
.gallery .photo {
 display:block; width:100%; min-width:0; height:auto; min-height:0;
 aspect-ratio:auto; margin:0; padding:0; border:0;
 background:transparent; overflow:visible; align-self:start; cursor:zoom-in;
 grid-row:auto;
}
.new-chapter .chapter-photo:hover img, .editorial-room .editorial-room-photo:hover img,
.wellness-feature .wellness-photo:hover img { transform:none; }
.chapter-0 .chapter-photo:first-child, .editorial-room .full-width-feature,
.chapter-suite .closet-finale { grid-column:1/-1; }
/* The Art of Arrival only: equal landscape frames; original image files retained for lightbox. */
.editorial-room.front .editorial-room-grid { grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; }
.editorial-room.front .editorial-room-grid > .editorial-room-photo { width:100%; min-width:0; aspect-ratio:3/2; overflow:hidden; }
.editorial-room.front .editorial-room-grid > .editorial-room-photo img { width:100%; height:100%; aspect-ratio:auto; object-fit:cover; object-position:center; }
.editorial-room.aerial .editorial-room-grid { grid-template-columns:repeat(3,minmax(0,1fr)); align-items:end; }
.editorial-room.aerial .editorial-room-photo { align-self:end; }
.chapter-suite .closet-finale img { max-width:min(100%,720px); margin-inline:auto; }
/* Portrait green bathroom + landscape monochrome bathroom share one natural-height row. */
.editorial-room.guests .bathroom-pair, .editorial-room.front .front-opening-pair {
 grid-column:1/-1; display:grid; grid-template-columns:minmax(0,0.67fr) minmax(0,1.5fr);
 gap:var(--gallery-gutter); align-items:start;
}
.editorial-room.front .front-opening-pair { grid-template-columns:minmax(0,1.5fr) minmax(0,1.34fr); }
.closing-photograph { display:block; width:100%; margin:30px 0 0; overflow:visible; }
.closing-photograph img { width:100%; height:auto; opacity:1; }
.plan-card img { display:block; width:100%; height:auto; max-width:100%; object-fit:contain; cursor:zoom-in; }
@media (max-width:700px) {
 .new-chapter .chapter-photos, .chapter-suite .suite-photos,
 .editorial-room .editorial-room-grid, .editorial-room.aerial .editorial-room-grid,
 .wellness-feature .wellness-triptych, .editorial-triptych .triptych-grid,
 .gallery, .editorial-room.guests .bathroom-pair, .editorial-room.front .front-opening-pair { grid-template-columns:minmax(0,1fr); }
 .editorial-room.front .editorial-room-grid { grid-template-columns:minmax(0,1fr); }
 .editorial-room.front .editorial-room-grid > .editorial-room-photo { aspect-ratio:auto; overflow:visible; }
 .editorial-room.front .editorial-room-grid > .editorial-room-photo img { height:auto; object-fit:initial; }
 .editorial-room.guests .bathroom-pair, .editorial-room.front .front-opening-pair, .chapter-0 .chapter-photo:first-child,
 .editorial-room .full-width-feature, .chapter-suite .closet-finale { grid-column:auto; }
}

:focus-visible{outline:2px solid #333;outline-offset:4px}
.contact-agent .agent-logo{display:block;width:min(100%,250px);height:auto;object-fit:contain;margin-top:22px}
.contact-agent a{overflow-wrap:anywhere}
.inquiry-form input,.inquiry-form textarea{max-width:100%}
@media (max-width:700px){.navlinks{flex-wrap:wrap}
.contact-columns{grid-template-columns:minmax(0,1fr)}
.contact-agent{min-width:0}}
