@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{--navy:#102b3a;--ink:#173443;--paper:#faf9f5;--white:#fff;--sand:#f0eee7;--gold:#b99c65;--gold-light:#dac698;--muted:#657078;--line:#dcded8;--serif:'Libre Caslon Display',Georgia,serif;--sans:'Manrope',Arial,sans-serif;--gutter:7.2%}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.85 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;width:100%;object-fit:cover}figure,h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400}h1,h2{font-family:var(--serif);line-height:1.04;letter-spacing:-1.3px}h2{font-size:clamp(44px,4.5vw,70px)}h1 em,h2 em{font-weight:400;color:inherit;font-style:italic}h3{font-size:24px;line-height:1.3}p{margin-top:20px}.eyebrow{font:700 9px/1.6 var(--sans);letter-spacing:2px;text-transform:uppercase}p.eyebrow{margin:0 0 27px}.light{color:var(--gold-light)}.section-label{display:flex;align-items:center;gap:15px}.section-label>span{color:#947940;font-weight:500;letter-spacing:0;padding-right:15px;border-right:1px solid var(--gold)}.section{padding:110px var(--gutter)}.section-top{display:flex;align-items:flex-end;justify-content:space-between;gap:8%;margin-bottom:50px}.section-top>div{flex:1}.section-top>p{max-width:320px;font-size:13px;color:var(--muted);line-height:1.9;padding-bottom:5px}.fine{font-size:10px;line-height:1.8;color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;padding:16px 23px;background:var(--navy);color:white;border:1px solid var(--navy);font-size:11px;font-weight:600;line-height:1.6;transition:background .2s,color .2s,transform .2s}.button>span{font-size:22px;line-height:1;font-weight:400}.button:hover{background:#25485a;transform:translateY(-1px)}.button.small{padding:13px 18px;gap:25px;font-size:10px}.button.gold{background:var(--gold-light);color:var(--navy);border-color:var(--gold-light)}.button.gold:hover{background:#ecdcba}.text-link{display:inline-flex;align-items:center;gap:28px;margin-top:25px;padding:0 0 7px;background:none;border:0;border-bottom:1px solid #a8b0ad;color:var(--ink);font-size:11px;font-weight:600;line-height:1.7}.text-link span{font-size:21px;font-weight:400}.text-link:hover{border-color:var(--gold);color:#80652f}.inverse{color:white;border-color:#ffffff50}.inverse:hover{color:var(--gold-light)}.skip{position:fixed;top:-100px;left:15px;padding:10px 20px;background:white;z-index:30}.skip:focus{top:10px}:focus-visible{outline:3px solid #ad8c48;outline-offset:5px}::selection{background:#d9c397;color:var(--navy)}
.announcement{background:var(--navy);color:#cdd6d9;display:flex;justify-content:space-between;align-items:center;padding:7px 4.4%;font-size:9px;letter-spacing:.4px}.announcement span{display:inline-block;margin-left:20px;padding-left:20px;border-left:1px solid #ffffff30;color:var(--gold-light)}.announcement b{font-weight:500;color:#fff;margin-left:12px}header{height:96px;padding:0 4.4%;display:flex;justify-content:space-between;align-items:center;gap:28px;background:var(--paper);position:sticky;top:0;z-index:10;border-bottom:1px solid var(--line)}.brand{display:inline-flex;gap:14px;align-items:center}.brand-mark{width:49px;height:49px;object-fit:contain}.wordmark{font-family:var(--serif);font-size:25px;letter-spacing:.9px;white-space:nowrap;line-height:1.15}.wordmark small{display:block;font:500 7px/1.5 var(--sans);letter-spacing:2.1px;margin-top:8px}.menu-toggle{display:none}nav{display:flex;align-items:center;gap:28px;font-size:10px;font-weight:600}nav>a:not(.button){padding-block:8px;border-bottom:1px solid transparent}nav>a:hover{border-bottom-color:var(--gold)}nav>a.is-current:not(.button){border-bottom-color:var(--gold)}
.hero{display:grid;grid-template-columns:46% 54%;background:var(--navy);color:white;min-height:690px;position:relative}.hero-content{padding:70px 11% 72px 15.65%;position:relative;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.hero-content>.eyebrow{font-size:8px;letter-spacing:1.9px;display:flex;align-items:center;gap:12px;margin-bottom:32px}.hero-content>.eyebrow>span{height:1px;width:25px;background:var(--gold)}h1{font-size:clamp(65px,6.1vw,98px);letter-spacing:-1.4px;line-height:.98}.hero-content h1 em{color:#e6dbc3}.hero-content>p:not(.eyebrow){font-size:12px;color:#c9d2d5;line-height:1.9;margin-top:26px;max-width:350px}.hero-actions{margin-top:32px;display:flex;flex-direction:column;gap:18px;align-items:flex-start}.hero-actions .button{font-size:10px;gap:29px}.hero-secondary{font-size:10px;color:#e2e7e6;display:flex;gap:19px;align-items:center}.hero-secondary:hover{color:var(--gold-light)}.hero-secondary span{font-size:19px}.hero-discover{display:flex;align-items:center;gap:14px;font-size:7px;letter-spacing:1.6px;color:#b0c0c7;margin-top:43px}.hero-discover>span{border:1px solid #ffffff40;border-radius:50%;width:25px;height:25px;display:grid;place-items:center;font-size:14px}.hero-visual{position:relative;overflow:hidden;min-height:690px;background:#385865}.hero-visual>img{height:100%;position:absolute;inset:0;object-position:61% center}.hero-visual:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#102b3a50);pointer-events:none}.hero-location{position:absolute;bottom:56px;left:35px;right:35px;display:flex;align-items:center;gap:18px;background:#faf9f5f5;color:var(--navy);padding:20px 23px;z-index:1;border-left:2px solid var(--gold)}.hero-location .eyebrow{font-size:7px;letter-spacing:1.7px}.hero-location b{display:block;font-family:var(--serif);font-weight:400;font-size:29px;line-height:1.2;margin-top:7px}.hero-location small{display:block;font-size:9px;color:var(--muted);margin-top:4px}.hero-location>a{font-size:27px;margin-left:auto}.location-cross{color:#957b48;font-size:29px}.image-credit{position:absolute;bottom:22px;left:35px;font-size:6px;letter-spacing:1.7px;color:white;z-index:1}.fact-strip{display:grid;grid-template-columns:repeat(4,1fr);padding:35px var(--gutter);gap:27px;border-bottom:1px solid var(--line);background:#fff}.fact-strip>div{border-right:1px solid var(--line);padding-right:15px}.fact-strip>div:last-child{border:0}.fact-strip span,.fact-strip strong{display:block}.fact-strip .fact-index{font-size:7px;letter-spacing:1.5px;color:#877446;margin-bottom:10px;font-weight:600}.fact-strip strong{font:400 23px/1.3 var(--serif)}.fact-strip span:not(.fact-index){font-size:9px;color:var(--muted);margin-top:6px}
.intro{display:grid;grid-template-columns:1fr 1fr;gap:11%;align-items:center;padding-block:120px}.intro p:not(.eyebrow){font-size:13px;color:var(--muted);line-height:1.95;max-width:430px}.intro .text-link{margin-top:30px}.intro-photo{position:relative;padding:0 0 55px 20px}.intro-photo:before{content:'';position:absolute;inset:30px 25px 0 0;border:1px solid #cfbc93;z-index:-1}.intro-photo>img{height:510px;object-position:54% center}.intro-photo figcaption{background:var(--paper);position:absolute;bottom:18px;right:0;padding:20px 0 0 27px;min-width:70%}.intro-photo figcaption>span{font-size:7px;letter-spacing:1.5px;color:var(--muted);font-weight:600}.intro-photo figcaption>b{font-family:var(--serif);font-size:30px;line-height:1.2;font-weight:400;display:block;margin-top:8px}.renewal{background:var(--navy);color:white;display:grid;grid-template-columns:1.25fr 1fr;gap:8%;padding:85px var(--gutter);position:relative;isolation:isolate;overflow:hidden}.renewal-heading{padding-left:0}.renewal h2{font-size:clamp(43px,4.2vw,64px)}.renewal h2 em{color:#e6dbc3}.renewal .eyebrow{font-size:8px}.renewal-copy{align-self:center;border-left:1px solid #b99c6566;padding-left:35px}.renewal-copy>p{margin:0;color:#bdcbd1;font-size:12px;line-height:2;max-width:430px}.renewal .text-link{font-size:10px}.renewal-brand{position:absolute;left:29%;top:-50px;width:330px;opacity:.07;z-index:-1}.renewal-brand img{width:100%}
.apartments{background:var(--paper)}.plan-layout{display:grid;grid-template-columns:1.25fr 1fr;border:1px solid var(--line);background:white}.plan{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:36px 25px}.plan>img{object-fit:contain;mix-blend-mode:normal}.plan .text-link{font-size:10px}.plan-detail{padding:43px 42px;background:var(--sand);border-left:1px solid var(--line)}.plan-detail .eyebrow{font-size:8px;margin-bottom:22px}.plan-detail h3{font:400 36px/1.1 var(--serif);letter-spacing:-.2px}.plan-stats{display:flex;justify-content:space-between;gap:20px;border-block:1px solid #d3d7ce;margin:27px 0 22px;padding:18px 0}.plan-stats>span{font-size:8px;text-transform:uppercase;letter-spacing:.7px}.plan-stats b{display:block;font:400 35px/1.3 var(--serif)}.features{list-style:none;padding:0;margin:0 0 20px;font-size:11px;line-height:2.6}.features li:before{content:'—';color:#ad915d;margin-right:13px}.plan-detail .fine{font-size:9px}.plan-detail .button{font-size:10px;margin-top:25px;padding:13px 18px}.utility-note{display:flex;gap:22px;padding:25px 0 0;margin-top:25px;border-top:1px solid var(--line)}.utility-icon{border:1px solid var(--gold);width:27px;height:27px;border-radius:50%;text-align:center;flex-shrink:0;font:italic 19px/25px var(--serif);color:#8c7547}.utility-note h3{font-size:14px;font-weight:600}.utility-note p{font-size:11px;margin-top:9px;color:var(--muted);max-width:830px;line-height:1.9}
.gallery-section{padding:95px var(--gutter);background:var(--sand)}.gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:210px;gap:12px}.gallery button{position:relative;padding:0;border:0;background:var(--navy);overflow:hidden;color:white;grid-column:span 1}.gallery button:first-child{grid-column:span 2;grid-row:span 2}.gallery button:nth-child(2),.gallery button:nth-child(5),.gallery button:nth-child(6){grid-column:span 2}.gallery img{height:100%;transition:transform .5s,opacity .5s}.gallery button:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#102b3a99)}.gallery button:hover img{transform:scale(1.035);opacity:.9}.gallery-caption{position:absolute;bottom:19px;left:19px;font-size:10px;z-index:1;letter-spacing:.3px}.gallery-plus{position:absolute;right:15px;bottom:14px;width:27px;height:27px;border:1px solid #ffffff80;display:grid;place-items:center;font-size:18px;z-index:1}.gallery-section>.fine{margin-top:20px;font-size:9px}.location{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center;background:white}.location>div>p:not(.eyebrow){font-size:12px;line-height:1.95;color:var(--muted);max-width:470px}.place-list{margin-top:28px}.place-list>div{border-top:1px solid var(--line);display:flex;gap:19px;padding:18px 0}.place-list>div>span{font-size:8px;color:#a28753;padding-top:3px}.place-list p{font-size:10px;color:var(--muted);margin:0}.place-list p>b{display:block;font-size:12px;color:var(--ink);font-weight:600;margin-bottom:4px}.location-image{position:relative;height:670px;padding:0 0 40px 0}.location-image>img{height:100%;object-position:52%;filter:saturate(.88)}.location-image figcaption{position:absolute;bottom:0;left:30px;right:-20px;background:var(--navy);color:white;padding:27px 30px;font-size:10px;border-left:2px solid var(--gold)}.location-image figcaption>span{font-size:7px;letter-spacing:1.6px;color:var(--gold-light)}.location-image figcaption>b{font:400 32px/1.2 var(--serif);display:block;margin:10px 0 5px}
.availability{background:var(--sand)}.availability-toolbar{border-block:1px solid #d2d5cc;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px;padding:15px 0}.availability-toolbar>p{font-size:10px;margin:0;color:var(--muted)}.availability-toolbar .text-link{margin:0;font-size:10px;padding:0 0 3px}.availability-toolbar button:disabled{opacity:.5;cursor:wait}.rental-listings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.rental-card{display:block;background:var(--paper);border:1px solid #d6d9d0;overflow:hidden;transition:box-shadow .3s,transform .3s}.rental-card:hover{transform:translateY(-3px);box-shadow:0 15px 30px #102b3a0d}.rental-photo{position:relative;aspect-ratio:1.62;overflow:hidden;background:#ced5d2}.rental-photo>img{height:100%;transition:transform .5s}.rental-card:hover .rental-photo>img{transform:scale(1.025)}.rental-availability{position:absolute;left:18px;bottom:18px;font-size:9px;background:var(--paper);color:var(--ink);padding:8px 12px;letter-spacing:.3px}.rental-availability:before{content:'';display:inline-block;width:5px;height:5px;border-radius:50%;background:#547460;margin-right:8px}.rental-photo-arrow{position:absolute;right:18px;bottom:18px;width:34px;height:34px;background:var(--paper);display:grid;place-items:center;font-size:20px;border-radius:50%}.rental-body{padding:28px 28px 0}.rental-body .eyebrow{font-size:8px;letter-spacing:1.8px;margin-bottom:16px;color:#856e41}.rental-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.rental-heading h3{font:400 38px/1.1 var(--serif)}.rental-price{text-align:right;white-space:nowrap}.rental-price>strong{font-size:25px;display:block;font-weight:500;line-height:1.3}.rental-price>span{font-size:9px;color:var(--muted)}.rental-address{font-size:9px;color:var(--muted);margin-top:16px}.rental-facts{border-block:1px solid var(--line);display:flex;gap:22px;padding:13px 0;margin-top:20px;font-size:11px}.rental-facts span+span{border-left:1px solid #cbd1c9;padding-left:22px}.rental-title{font-size:11px;color:var(--muted);line-height:1.9;min-height:42px;margin:18px 0 20px}.rental-action{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:18px 0;font-size:11px;font-weight:600}.rental-action span:last-child{font-size:23px;font-weight:400}.rental-message{grid-column:1/-1;background:var(--paper);padding:35px;margin:0;font-size:13px}.photo-unavailable:before{content:'COURTVIEW SQUARE';position:absolute;top:40%;width:100%;text-align:center;font:20px var(--serif);letter-spacing:2px}.availability>.fine{margin-top:22px;max-width:850px;font-size:9px}#all-courtview-listings{margin-top:12px;font-size:9px}.contact-row{display:flex;justify-content:space-between;align-items:center;background:var(--navy);color:white;padding:35px 40px;margin-top:45px}.contact-row .eyebrow{font-size:7px;color:var(--gold-light);margin-bottom:11px}.contact-row h3{font:400 33px/1.2 var(--serif);margin-bottom:10px}.contact-row a{font-size:14px;color:#d3dde0;letter-spacing:.5px}.contact-row>img{width:145px;object-fit:contain;padding:9px;background:#faf9f5}
.faq{display:grid;grid-template-columns:1fr 1.15fr;gap:10%;background:var(--paper);padding-block:95px}.faq-intro>h2{font-size:52px}.faq-intro .eyebrow{font-size:8px}.faq-intro>.text-link{font-size:10px;margin-top:28px}.faq-questions>details{border-top:1px solid var(--line);padding:22px 0}.faq-questions>details:last-child{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:12px;font-weight:600}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';font-size:21px;color:#967c49;font-weight:400}.faq details[open] summary:after{content:'−'}.faq details p{font-size:11px;color:var(--muted);line-height:1.95;margin-top:15px}.other-communities{background:#e9edea}.other-communities .section-top>p{max-width:320px}.other-communities h2{font-size:clamp(43px,4.3vw,67px)}.community-directory{display:grid;grid-template-columns:1fr 1fr;column-gap:65px}.community-row{display:flex;gap:22px;border-top:1px solid #becbc3;padding:30px 0}.community-index{font-size:8px;color:#8b774f;padding-top:2px}.community-info .eyebrow{font-size:7px;letter-spacing:1.5px;margin-bottom:13px}.community-info h3{font:400 31px/1.15 var(--serif)}.community-address{font-size:10px;color:var(--muted);margin-top:10px}.community-info .text-link{font-size:9px;margin-top:18px;padding-bottom:4px}.communities-bottom{display:flex;justify-content:space-between;align-items:center;gap:30px;border-top:1px solid #becbc3;padding-top:30px;margin-top:10px}.communities-bottom>p{font-size:11px;color:var(--muted);max-width:390px;margin:0}.communities-bottom .button{font-size:10px}
footer{background:#0b2533;color:white;padding:70px var(--gutter) 25px;display:grid;grid-template-columns:1.45fr 1fr 1fr 1fr;gap:35px}.footer-brand{gap:12px}.footer-brand .brand-mark{width:40px;height:40px}.footer-brand .wordmark{font-size:19px}.footer-brand small{font-size:6px;letter-spacing:1.6px}.footer-main>p{font:400 28px/1.12 var(--serif);color:#e0d6c0;margin-top:28px}.footer-column,.footer-management{padding-top:4px}.footer-column>.eyebrow,.footer-management>.eyebrow{font-size:7px;color:var(--gold-light);letter-spacing:1.4px;display:block;margin-bottom:22px}.footer-column>p{font-size:10px;color:#b1c1c9;margin:0 0 16px;line-height:1.9}.footer-column>a{display:block;font-size:10px;color:#d3dde0;margin-top:11px}.footer-column>a:hover{color:var(--gold-light)}.footer-management>img{width:140px;height:auto}.footer-management>p{font-size:9px;color:#b1c1c9;line-height:1.8;margin-top:17px}.footer-bottom{grid-column:1/-1;border-top:1px solid #ffffff20;display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:23px;margin-top:30px;font-size:8px;color:#8fa6b2}.mobile-leasing{display:none}
dialog{width:min(1100px,94vw);max-height:94vh;border:0;padding:25px;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#081e2ce8}dialog>img{object-fit:contain;max-height:72vh}#close-dialog{position:sticky;top:0;float:right;border:0;background:var(--navy);color:white;width:36px;height:36px;font-size:26px;line-height:36px;z-index:1}#dialog-caption{font-size:12px;text-align:center;margin-top:13px}.dialog-controls{display:flex;justify-content:center;align-items:center;gap:25px;margin-top:10px}.dialog-controls>button{width:40px;height:34px;border:1px solid #bdc7c3;background:none;color:var(--ink)}#photo-count{font-size:10px}
@media(min-width:1800px){body{max-width:1920px;margin:auto}.hero{min-height:800px}.hero-visual{min-height:800px}.hero-content{padding-top:85px;padding-bottom:85px}}
@media(max-width:1100px){:root{--gutter:6%}header{padding-inline:4%;gap:20px}nav{gap:18px;font-size:9px}.wordmark{font-size:22px}.brand{gap:10px}.brand-mark{width:43px;height:43px}.button.small{padding:12px 15px;gap:17px}.hero{grid-template-columns:47% 53%;min-height:650px}.hero-content{padding:55px 9% 55px 12.77%}.hero-visual{min-height:650px}h1{font-size:70px}.hero-content>p:not(.eyebrow){font-size:11px}.desktop-break{display:none}.hero-location{left:22px;right:22px;padding:18px}.hero-location b{font-size:26px}.hero-location .location-cross{display:none}.image-credit{left:22px;font-size:5px}.fact-strip{gap:18px;padding-block:30px}.fact-strip strong{font-size:21px}.fact-strip span:not(.fact-index){font-size:8px}.fact-strip .fact-index{font-size:6px}.section{padding-block:85px}.intro{gap:8%}.intro-photo>img{height:450px}.intro-photo figcaption>b{font-size:27px}.plan-detail{padding:33px 30px}.plan-detail h3{font-size:32px}.plan{padding:25px 15px}.gallery{grid-auto-rows:170px}.location{gap:8%}.location-image{height:620px}.rental-body{padding:25px 24px 0}.rental-heading h3{font-size:34px}.rental-price>strong{font-size:23px}.rental-heading{gap:12px}.community-info h3{font-size:28px}footer{gap:25px;grid-template-columns:repeat(2,minmax(0,1fr)) 1fr}.footer-management{grid-column:1/-1;display:flex;align-items:center;gap:25px;border-top:1px solid #ffffff20;padding-top:25px}.footer-management>.eyebrow{margin:0}.footer-management>p{margin:0}.footer-management>img{width:105px}.footer-bottom{margin-top:0}}
@media(max-width:860px){nav{gap:13px}.brand-mark{width:35px;height:35px}.wordmark{font-size:20px}.wordmark small{font-size:6px;letter-spacing:1.5px}nav .button.small{font-size:9px;gap:13px}.hero-content{padding-block:45px}.hero h1{font-size:62px}.hero-content>.eyebrow{font-size:6px;letter-spacing:1.6px}.hero-actions .button{font-size:9px;gap:20px;padding:14px 17px}.hero-location{left:17px;right:17px;padding:16px}.hero-location b{font-size:23px}.hero-location .eyebrow{font-size:6px}.fact-strip strong{font-size:19px}.fact-strip span:not(.fact-index){font-size:7px}.intro h2,.location h2{font-size:46px}.intro p:not(.eyebrow){font-size:12px}.plan-detail{padding:28px 24px}.features{font-size:10px}.plan-stats b{font-size:30px}.gallery-caption{font-size:8px;left:12px;bottom:14px}.gallery-plus{width:23px;height:23px;font-size:15px;right:10px;bottom:10px}.rental-heading{flex-wrap:wrap}.rental-price{text-align:left;display:flex;align-items:baseline;gap:6px}.rental-heading>h3{width:100%}.rental-title{min-height:62px}.faq{gap:7%}.faq-intro>h2{font-size:46px}}
@media(max-width:760px){:root{--gutter:7%}html{scroll-padding-top:80px}.announcement{padding:7px var(--gutter);font-size:7px;justify-content:center}.announcement>a:last-child{display:none}.announcement span{font-size:7px;margin-left:12px;padding-left:12px}header{height:77px;padding:0 var(--gutter)}.brand-mark{width:39px;height:39px}.brand{gap:10px}.wordmark{font-size:21px}.wordmark small{font-size:6px;letter-spacing:1.8px;margin-top:6px}.menu-toggle{display:flex;align-items:center;gap:14px;background:none;border:0;padding:10px 0;color:var(--ink);font-size:10px}.menu-toggle>span{font-size:17px}nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:25px var(--gutter);border-bottom:1px solid var(--line);font-size:12px;box-shadow:0 12px 20px #102b3a0d}nav.open{display:flex;flex-direction:column;align-items:flex-start;gap:18px}nav .button.small{font-size:11px;padding:14px 20px;gap:35px}.hero{display:flex;flex-direction:column;min-height:0}.hero-content{padding:53px var(--gutter) 40px;width:100%}.hero-content>.eyebrow{font-size:7px;margin-bottom:29px}.hero h1{font-size:clamp(63px,12vw,85px);letter-spacing:-1.3px;line-height:.96}.hero-content>p:not(.eyebrow){font-size:12px;max-width:370px;margin-top:25px}.hero-actions{flex-direction:row;align-items:center;flex-wrap:wrap;gap:20px;margin-top:26px}.hero-actions .button{font-size:9px;padding:15px 18px;gap:24px}.hero-secondary{font-size:9px;gap:10px}.hero-discover{display:none}.hero-visual{min-height:400px;height:400px;width:100%}.hero-visual>img{object-position:center 55%}.hero-location{bottom:34px;left:var(--gutter);right:var(--gutter);padding:17px 20px}.hero-location b{font-size:29px}.hero-location .eyebrow{font-size:6px}.hero-location small{font-size:8px}.hero-location .location-cross{display:block;font-size:26px}.image-credit{font-size:5px;left:var(--gutter);bottom:13px}.fact-strip{grid-template-columns:1fr 1fr;gap:25px 20px;padding:28px var(--gutter)}.fact-strip>div{padding-right:10px}.fact-strip>div:nth-child(2){border:0}.fact-strip strong{font-size:23px}.fact-strip .fact-index{font-size:6px;letter-spacing:1.1px;margin-bottom:7px}.fact-strip span:not(.fact-index){font-size:8px;line-height:1.7}.section{padding:65px var(--gutter)}h2{font-size:48px;letter-spacing:-.6px}.eyebrow{font-size:8px;letter-spacing:1.7px}p.eyebrow{margin-bottom:23px}.section-label{gap:12px}.section-label>span{padding-right:12px}.section-top{display:block;margin-bottom:30px}.section-top>p{font-size:12px;max-width:430px;margin-top:21px}.intro{grid-template-columns:1fr;gap:40px}.intro h2,.location h2{font-size:49px}.intro p:not(.eyebrow){font-size:12px;max-width:500px}.intro-photo{padding-left:15px;padding-bottom:48px}.intro-photo>img{height:410px}.intro-photo figcaption{padding-left:18px;min-width:78%}.intro-photo figcaption>b{font-size:28px}.intro-photo figcaption>span{font-size:6px}.renewal{grid-template-columns:1fr;padding:55px var(--gutter);gap:30px}.renewal h2{font-size:45px}.renewal-copy{padding-left:22px}.renewal-copy>p{font-size:11px}.renewal-brand{left:auto;right:-100px;top:-30px;width:330px}.plan-layout{grid-template-columns:1fr}.plan{padding:20px 12px 30px}.plan-detail{border-left:0;border-top:1px solid var(--line);padding:30px}.plan-detail h3{font-size:35px}.plan-detail .eyebrow{font-size:8px}.features{font-size:11px}.plan-stats{max-width:360px}.plan-stats b{font-size:35px}.utility-note{gap:15px}.utility-note h3{font-size:13px}.utility-note p{font-size:10px}.gallery-section{padding:65px var(--gutter)}.gallery{grid-template-columns:1fr 1fr;grid-auto-rows:180px;gap:10px}.gallery button:first-child{grid-column:span 2;grid-row:span 2}.gallery button:nth-child(2),.gallery button:nth-child(5),.gallery button:nth-child(6){grid-column:span 1}.gallery button:nth-child(6){grid-column:span 2}.gallery-caption{font-size:8px;left:13px;right:35px;bottom:15px;line-height:1.5}.gallery-section>.fine{font-size:8px}.location{grid-template-columns:1fr;gap:35px}.location>div>p:not(.eyebrow){font-size:12px;max-width:none}.location-image{height:465px;margin-right:12px}.location-image figcaption{left:22px;right:-12px;padding:24px}.location-image figcaption>b{font-size:31px}.place-list p{font-size:10px}.place-list p>b{font-size:12px}.availability-toolbar{margin-bottom:23px;padding:13px 0;gap:15px}.availability-toolbar>p{font-size:8px}.availability-toolbar .text-link{font-size:8px;white-space:nowrap}.rental-listings{grid-template-columns:1fr;gap:25px}.rental-body{padding:25px 25px 0}.rental-heading{flex-wrap:nowrap}.rental-heading>h3{width:auto;font-size:38px}.rental-price{text-align:right;display:block}.rental-price>strong{font-size:25px}.rental-title{min-height:0;font-size:11px}.rental-facts{font-size:10px}.contact-row{padding:28px 25px;gap:25px;align-items:flex-start}.contact-row h3{font-size:30px}.contact-row>img{width:100px;padding:6px;align-self:center}.contact-row .eyebrow{font-size:6px;letter-spacing:1.3px}.contact-row a{font-size:12px}.availability>.fine{font-size:8px}.faq{grid-template-columns:1fr;gap:35px}.faq-intro>h2{font-size:48px}.faq-intro>.text-link{font-size:10px}.faq-questions>details{padding:21px 0}.faq summary{font-size:12px}.faq details p{font-size:11px}.other-communities h2{font-size:48px}.community-directory{grid-template-columns:1fr}.community-row{padding:26px 0}.community-info h3{font-size:32px}.community-info .eyebrow{font-size:7px}.community-address{font-size:10px}.communities-bottom{flex-direction:column;align-items:flex-start;gap:23px}.communities-bottom>p{font-size:11px}.communities-bottom>.button{font-size:10px}.other-communities{padding-bottom:70px}footer{padding:50px var(--gutter) 100px;grid-template-columns:1fr 1fr;gap:35px 25px}.footer-main{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:25px;padding-bottom:28px;border-bottom:1px solid #ffffff20}.footer-main>p{font-size:25px;margin:0}.footer-brand .wordmark{font-size:20px}.footer-brand .brand-mark{width:38px;height:38px}.footer-management{gap:25px;flex-wrap:wrap}.footer-management>p{font-size:9px}.footer-management>.eyebrow{font-size:6px}.footer-bottom{flex-wrap:wrap;gap:13px;font-size:7px}.footer-bottom>span:first-child{width:100%}.mobile-leasing{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:9;background:var(--navy);color:white;align-items:center;justify-content:space-between;padding:15px var(--gutter) calc(15px + env(safe-area-inset-bottom));border-top:1px solid #ffffff20;font-size:11px;box-shadow:0 -5px 20px #102b3a17}.mobile-leasing>span{font-family:var(--serif);font-size:14px;letter-spacing:.6px;color:#d7c49e}.mobile-leasing>b{font-weight:400;font-size:22px;line-height:1}.section[id]{scroll-margin-top:0}dialog{padding:15px}dialog>img{max-height:65vh}#dialog-caption{font-size:10px}}
@media(max-width:430px){.wordmark{font-size:18px}.wordmark small{font-size:5px;letter-spacing:1.6px}.brand-mark{width:34px;height:34px}.brand{gap:8px}.hero-content{padding-top:45px}.hero h1{font-size:64px}.hero-content>.eyebrow{font-size:6px;letter-spacing:1.5px}.hero-visual{min-height:350px;height:350px}.hero-actions{gap:19px}.hero-secondary{font-size:8px}.hero-actions .button{font-size:8px;gap:18px}.fact-strip strong{font-size:21px}.fact-strip span:not(.fact-index){font-size:7px}.fact-strip .fact-index{font-size:5px}.section-label{font-size:7px}.intro h2,.location h2,h2,.other-communities h2{font-size:44px}.intro-photo>img{height:360px}.renewal h2{font-size:42px}.gallery{grid-auto-rows:145px}.gallery button:first-child{grid-row:span 2}.gallery-caption{font-size:7px;left:11px}.gallery-plus{right:8px}.rental-heading{flex-direction:column;gap:12px}.rental-price{display:flex;text-align:left;align-items:baseline;gap:6px}.rental-heading>h3{font-size:38px}.contact-row{flex-direction:column;gap:23px}.contact-row>img{align-self:flex-start;width:110px}.footer-main{align-items:flex-start;flex-direction:column;gap:25px}.footer-main>p{font-size:28px}.footer-management{gap:20px}.mobile-leasing>span{font-size:12px}.mobile-leasing{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.rental-card:hover{transform:none}.gallery button:hover img,.rental-card:hover .rental-photo>img{transform:none}}
/* Readable body copy across the editorial layouts. */
nav{font-size:11px}.hero-content>p:not(.eyebrow){font-size:14px}.intro p:not(.eyebrow),.location>div>p:not(.eyebrow),.section-top>p{font-size:14px}.renewal-copy>p{font-size:13px}.utility-note p{font-size:12px}.place-list p,.faq details p{font-size:12px}.rental-title{font-size:12px}.rental-address{font-size:10px}.community-address,.communities-bottom>p{font-size:12px}.fact-strip span:not(.fact-index){font-size:10px}.hero-actions .button{font-size:11px}
@media(max-width:1100px) and (min-width:761px){nav{font-size:9px}.hero-content>p:not(.eyebrow){font-size:12px}.hero-actions .button{font-size:10px}.fact-strip span:not(.fact-index){font-size:9px}}
@media(max-width:760px){.hero-content>p:not(.eyebrow){font-size:13px}.hero-actions .button{font-size:9px}.fact-strip span:not(.fact-index){font-size:9px}.section-top>p,.intro p:not(.eyebrow),.location>div>p:not(.eyebrow){font-size:13px}.renewal-copy>p{font-size:12px}.utility-note p,.place-list p{font-size:11px}.faq details p{font-size:12px}.communities-bottom>p,.community-address{font-size:11px}}
/* Keep the building unobstructed; its address is a separate panel below the image. */
.hero-visual{display:flex;flex-direction:column;overflow:hidden;background:var(--paper)}
.hero-visual:after{display:none}
.hero-photo{position:relative;flex:1;min-height:500px;overflow:hidden;background:#385865}
.hero-photo>img{position:absolute;inset:auto 0 0;width:100%;height:128%;object-fit:cover;object-position:62% 100%}
.hero-location{position:relative;inset:auto;flex:none;background:var(--paper);margin:0;padding:22px 32px;border-left:0;border-top:2px solid var(--gold);gap:18px;z-index:auto}
.hero-location .location-cross{display:block}
.image-credit{position:static;display:block;flex:none;color:var(--muted);background:var(--paper);padding:0 32px 15px;font-size:6px;letter-spacing:1.5px}
@media(min-width:1800px){.hero-photo{min-height:610px}}
@media(max-width:1100px) and (min-width:761px){.hero-photo{min-height:460px}.hero-location{padding:20px 24px}.image-credit{padding:0 24px 13px}.hero-location .location-cross{display:none}}
@media(max-width:760px){.hero-visual{height:auto;min-height:0}.hero-photo{flex:none;height:350px;min-height:0}.hero-photo>img{height:125%;object-position:60% 100%}.hero-location{padding:20px var(--gutter);gap:17px}.image-credit{padding:0 var(--gutter) 14px;font-size:5px}.hero-location .location-cross{display:block}}
@media(max-width:430px){.hero-visual{height:auto;min-height:0}.hero-photo{height:315px}}
/* Preserve the wider river setting instead of zooming into the building. */
.hero-photo>img{height:100%;object-position:61% center}
@media(max-width:760px){.hero-photo>img{height:100%;object-position:60% center}}
/* Pet policy and accessible presentation. */
.pet-highlight{display:flex;align-items:center;gap:13px;margin-top:23px;padding:12px 0;color:#e6dbc3;font-size:16px;line-height:1.5}
.pet-highlight svg{width:30px;height:30px;fill:currentColor;flex:none}.pet-highlight small{display:block;color:#d4dfe3;font-size:12px;margin-top:3px}.pet-highlight:hover{text-decoration:underline;text-underline-offset:5px}
.pets{display:grid;grid-template-columns:1fr 1fr;gap:9%;background:#f0eee7;border-bottom:1px solid var(--line)}.pet-intro>p:not(.eyebrow){color:var(--muted);max-width:460px}.pet-intro h2{font-size:clamp(44px,4.4vw,67px)}.pet-policy h3{font-family:var(--serif);font-size:30px}.pet-policy p{font-size:15px;color:var(--muted);line-height:1.9}.pet-fees{margin:23px 0 0;display:grid;grid-template-columns:1fr 1fr;border-block:1px solid #b7c0bc;padding:21px 0;gap:20px}.pet-fees>div+div{border-left:1px solid #b7c0bc;padding-left:22px}.pet-fees dt{font-size:14px}.pet-fees dd{margin:8px 0 0;font-size:28px;line-height:1.5}.pet-fees dd span{font-size:13px}.pet-policy .pet-total{margin:12px 0 30px;font-size:14px}.assistance-note{padding:23px 25px;background:var(--paper);border-left:3px solid #80652f;margin-top:27px}.assistance-note h3{font-family:var(--sans);font-size:17px;font-weight:600}.assistance-note p{font-size:14px;margin-top:12px}
.plan-description{width:100%;padding:18px 8px 0;font-size:14px;text-align:left}.plan-description summary{cursor:pointer;min-height:32px;text-decoration:underline;text-underline-offset:4px}.plan-description p{font-size:14px;line-height:1.85;margin-top:15px;color:var(--muted)}
.access-housing{display:grid;grid-template-columns:1fr 1fr;gap:9%;background:#fff;border-top:1px solid var(--line)}.access-housing h2{font-size:clamp(44px,4.4vw,67px)}.access-housing p{font-size:15px;line-height:1.9;color:var(--muted)}.access-housing h3{font-family:var(--serif);font-size:34px}.housing-identity{display:flex;gap:24px;align-items:center;margin-top:30px}.housing-identity img{width:72px;height:76px;object-fit:contain;flex:none}.housing-identity p{margin:0}.access-housing p a,.faq details p a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.housing-footer{background:white;padding:8px;display:inline-block}.housing-footer img{width:49px;height:auto;object-fit:contain}
:root{--muted:#525f67}a,button,summary{touch-action:manipulation}a,button,summary{scroll-margin-block:120px 90px}:focus-visible{outline:3px solid #102b3a;outline-offset:4px;box-shadow:0 0 0 7px #faf9f5}#main:focus{outline:none;box-shadow:none}.skip{z-index:40}.fine,.availability>.fine,.gallery-section>.fine{font-size:12px}.eyebrow,.section-label,.fact-strip .fact-index,.image-credit,.community-index,.community-info .eyebrow,.footer-column>.eyebrow,.footer-management>.eyebrow,.contact-row .eyebrow,.hero-location .eyebrow,.rental-body .eyebrow,.hero-content>.eyebrow{font-size:11px}.section-label>span,.fact-strip .fact-index,.community-index{color:#735e32}.image-credit{font-size:10px}.gallery-caption{font-size:13px}.rental-body .eyebrow{color:#735e32}.rental-address,.rental-price>span,.rental-facts,.rental-title,.rental-action{font-size:13px}.availability-toolbar>p,#all-courtview-listings,.availability-toolbar .text-link{font-size:12px}.faq summary{font-size:15px}.faq details p{font-size:15px}.footer-column>a,.footer-column>p,.footer-management>p,.footer-bottom{font-size:12px}.footer-bottom{flex-wrap:wrap;color:#c5d2d9}.contact-row a{color:#e0e8ec}.text-link,.hero-secondary{min-height:32px}.hero-location>a{min-width:44px;min-height:44px;display:grid;place-items:center}.menu-toggle{min-height:44px}#close-dialog,.dialog-controls>button{min-width:44px;min-height:44px}.announcement{font-size:11px}.announcement span{font-size:11px}
@media(min-width:761px) and (max-width:1200px){header{gap:16px;padding-inline:3%}nav{gap:14px;font-size:11px}.wordmark{font-size:20px}.brand-mark{width:36px;height:36px}.button.small{gap:14px;padding:12px}nav .button.small{font-size:10px}}
@media(max-width:760px){.pets,.access-housing{grid-template-columns:1fr;gap:35px}.pet-policy h3{font-size:29px}.pet-highlight{font-size:16px}.pet-highlight small{font-size:12px}.hero-content>.eyebrow{font-size:10px;letter-spacing:1px}.hero-actions .button,.hero-secondary{font-size:12px}.fact-strip .fact-index{font-size:10px;letter-spacing:.5px}.fact-strip span:not(.fact-index){font-size:12px}.fact-strip strong{font-size:24px}.section-label{font-size:10px;letter-spacing:1px}.community-info .eyebrow{font-size:11px}.community-address{font-size:13px}.gallery-caption{font-size:12px}.hero-location .eyebrow{font-size:10px}.hero-location small{font-size:12px}.image-credit{font-size:9px;letter-spacing:1px}.footer-column>.eyebrow,.footer-management>.eyebrow{font-size:10px}.availability-toolbar{flex-wrap:wrap}.availability-toolbar>p,.availability-toolbar .text-link{font-size:12px}.footer-bottom{font-size:12px}.announcement span{font-size:10px}.announcement{font-size:10px}.gallery-plus{width:28px;height:28px}.mobile-leasing{position:static;padding:18px var(--gutter);font-size:13px}.mobile-leasing>span{font-size:14px}footer{padding-bottom:40px}.housing-identity{gap:18px}.pet-intro h2,.access-housing h2{font-size:44px}html{scroll-padding-top:90px}.hero h1{font-size:clamp(50px,13vw,85px)}.wordmark{font-size:clamp(15px,4.7vw,21px)}}
@media(forced-colors:active){.pet-highlight svg{fill:LinkText}.housing-footer{forced-color-adjust:none}:focus-visible{outline:3px solid Highlight;box-shadow:none}.button{border:2px solid ButtonText}}

.place-list>div>span{color:#735e32;font-size:12px}.gallery-caption{background:#102b3aeb;padding:5px 8px}.gallery button:focus-visible{outline-offset:-5px;box-shadow:inset 0 0 0 8px white}

/* Photo-led community collection. */
.community-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.community-row{display:flex;flex-direction:column;gap:0;border:1px solid #cad2cd;padding:0;background:var(--paper);min-width:0}
.community-photo{display:block;overflow:hidden;aspect-ratio:16/9;background:#d2dcd5}
.community-photo img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.community-photo:hover img{transform:scale(1.035)}
.community-info{padding:16px 18px 18px;display:flex;flex-direction:column;flex:1}.community-info .eyebrow{margin:0 0 8px;font-size:11px;letter-spacing:1.6px}
.community-info h3{font-size:clamp(22px,2.2vw,28px);min-height:32px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.community-address{margin-top:8px;font-size:13px}
.community-info .text-link{margin-top:10px;font-size:12px;min-height:32px;align-self:flex-start}
.community-photo:focus-visible{outline-offset:-7px;box-shadow:inset 0 0 0 10px white;position:relative;z-index:1}
.communities-bottom{margin-top:36px}
@media(max-width:1100px){.community-directory{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.community-directory{grid-template-columns:1fr;gap:20px}.community-info{padding:16px 18px 18px}.community-info h3{font-size:28px;min-height:32px}.community-photo{aspect-ratio:16/9}.community-info .eyebrow{font-size:11px}.community-address{font-size:14px}}
@media(prefers-reduced-motion:reduce){.community-photo img{transition:none}.community-photo:hover img{transform:none}}

/* Compact, readable pet information on every screen. */
.pets{padding-block:64px;grid-template-columns:1fr 1fr;gap:28px 8%;align-items:center;background:#f0eee7}
.pet-intro h2{font-size:clamp(36px,3.4vw,50px);line-height:1.08;letter-spacing:-.6px}
.pet-intro p.eyebrow{margin-bottom:15px;font-size:11px}
.pet-intro>p:not(.eyebrow){font-size:15px;line-height:1.8;margin-top:18px;max-width:420px}
.pet-intro .text-link{margin-top:18px;font-size:12px}
.pet-policy{padding:25px 28px;background:var(--paper);border:1px solid #ccd1c9}
.pet-policy>h3{font-family:var(--sans);font-weight:600;font-size:16px;line-height:1.5}
.pet-fees{margin-top:18px;padding:0;border:0;gap:16px}
.pet-fees>div{padding:15px 17px;background:#e9ede8}
.pet-fees>div+div{padding:15px 17px;border:0}
.pet-fees dt{font-size:12px}.pet-fees dd{font-size:32px;margin-top:5px;line-height:1.3}.pet-fees dd span{font-size:12px;white-space:nowrap}
.pet-policy .pet-total{font-size:13px;margin:14px 0 0;line-height:1.7}.pet-total strong{font-weight:600;color:var(--ink)}
.pet-policy .pet-exception{margin-top:18px;padding-top:16px;border-top:1px solid #ccd1c9;font-size:12px;line-height:1.8}
.pet-exception strong{color:var(--ink);font-weight:600}
.pet-full-policy{grid-column:1/-1;border-top:1px solid #bbc4be}
.pet-full-policy summary{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:17px 0 0;min-height:48px;font-size:13px;cursor:pointer;font-weight:600;list-style:none}
.pet-full-policy summary::-webkit-details-marker{display:none}.pet-disclosure-icon{font-size:24px;line-height:1;font-weight:400;transition:transform .2s}
.pet-full-policy[open] .pet-disclosure-icon{transform:rotate(45deg)}
.pet-expanded{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding-top:25px}
.pet-expanded h3{font-family:var(--sans);font-size:15px;font-weight:600;line-height:1.6}
.pet-expanded p{font-size:14px;color:var(--muted);line-height:1.85;margin-top:10px}
@media(max-width:760px){.pets{padding-block:40px;grid-template-columns:1fr;gap:25px}.pet-intro h2{font-size:38px}.pet-intro>p:not(.eyebrow){font-size:14px;max-width:none}.pet-policy{padding:22px}.pet-fees{gap:12px}.pet-fees>div,.pet-fees>div+div{padding:13px}.pet-fees dd{font-size:29px}.pet-fees dd span{display:block;font-size:12px;margin-top:3px}.pet-policy .pet-exception{font-size:13px}.pet-full-policy{grid-column:auto}.pet-expanded{grid-template-columns:1fr;gap:22px}}
@media(prefers-reduced-motion:reduce){.pet-disclosure-icon{transition:none}}

/* The manager's supplied logo is already transparent; remove the added panel. */
.contact-row>img{background:transparent;padding:0;width:165px;object-fit:contain}
.footer-management>img{object-fit:contain}
.housing-footer{background:transparent;padding:0;line-height:0}
.housing-footer img{width:58px;height:auto;filter:invert(1);mix-blend-mode:screen}
.location{row-gap:50px}.location-map{grid-column:1/-1;min-width:0;border:1px solid var(--line);background:var(--paper)}
.map-toolbar{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:24px 28px;flex-wrap:wrap}
.map-toolbar h3{font-family:var(--serif);font-size:30px;line-height:1.2}
.map-toolbar p{margin-top:8px;font-size:14px;color:var(--muted)}
.location-map iframe{display:block;width:100%;height:360px;border:0;background:#e6e9e2}
.location-map .map-fallback{font-size:12px;line-height:1.7;padding:14px 28px;margin:0;max-width:none}
.map-fallback a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px){.contact-row>img{width:145px;align-self:flex-start}.location{row-gap:35px}.map-toolbar{padding:22px}.map-toolbar h3{font-size:28px}.map-toolbar p{font-size:13px}.map-toolbar .button{font-size:12px}.location-map iframe{height:300px}.location-map .map-fallback{padding:14px 22px;font-size:12px}}

/* Availability leads directly into the floor plan. */
.availability .section-top{margin-bottom:30px}.availability.section{padding-top:75px;padding-bottom:65px}
.contact-page-link{display:block;margin-top:12px;text-decoration:underline;text-underline-offset:4px}
.rental-empty{grid-column:1/-1;padding:40px;background:var(--paper);border:1px solid var(--line)}
.rental-empty .eyebrow{font-size:11px;color:#735e32;margin:0 0 18px}.rental-empty h3{font:400 42px/1.15 var(--serif)}
.rental-empty>p:not(.eyebrow){font-size:15px;color:var(--muted);max-width:640px;line-height:1.85}
.empty-actions{display:flex;align-items:center;flex-wrap:wrap;gap:25px;margin-top:25px}.empty-actions .text-link{margin:0;font-size:13px}
.contact-intro{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;background:var(--navy);color:white;padding-block:75px}
.contact-intro h1{font-size:clamp(50px,5vw,78px)}.contact-intro h1 em{color:var(--gold-light)}.contact-intro .eyebrow{color:var(--gold-light);font-size:11px}
.contact-intro>div>p:not(.eyebrow){font-size:16px;max-width:430px;color:#d4dfe3}.contact-intro .button{margin-top:28px}.contact-intro .contact-relay{font-size:12px!important}
.contact-intro>img{height:430px;object-fit:cover}.contact-options{display:grid;grid-template-columns:1fr 1fr;gap:50px 8%}
.contact-options article{border-top:1px solid var(--line);padding-top:25px;min-width:0}.contact-options .eyebrow{font-size:11px;margin-bottom:18px}
.contact-options h2{font-size:38px}.contact-options p:not(.eyebrow){font-size:15px;color:var(--muted)}.contact-options .text-link{font-size:14px}
@media(max-width:760px){.availability.section{padding-block:45px}.rental-empty{padding:26px}.rental-empty h3{font-size:34px}.rental-empty>p:not(.eyebrow){font-size:14px}.empty-actions{gap:20px}.empty-actions .button{font-size:12px;max-width:100%}.contact-intro{grid-template-columns:1fr;gap:35px;padding-block:45px}.contact-intro>img{height:280px}.contact-options{grid-template-columns:1fr;gap:35px}.contact-options h2{font-size:34px}}

.upcoming-note{display:flex;justify-content:space-between;align-items:center;gap:35px;border-top:1px solid #bdc5bd;margin-top:35px;padding-top:30px}.upcoming-note>div{max-width:660px}.upcoming-note .eyebrow{font-size:11px;color:#735e32;margin-bottom:12px}.upcoming-note h3{font:400 35px/1.2 var(--serif)}.upcoming-note p:not(.eyebrow){font-size:14px;color:var(--muted);line-height:1.9;margin-top:15px}.upcoming-note>.button{flex:none;font-size:12px}
@media(max-width:1000px){.upcoming-note{flex-direction:column;align-items:flex-start}.upcoming-note>div{max-width:none}}



/* Compact listings with labeled, accessible bed / bath / area icons. */
.rental-card{display:flex;flex-direction:column}.rental-body{padding:20px 22px 0;display:flex;flex-direction:column;flex:1}
.rental-body .eyebrow{font-size:11px;letter-spacing:1.3px;margin-bottom:10px}
.rental-heading{gap:15px;align-items:center;flex-wrap:nowrap;flex-direction:row}
.rental-heading h3{font-size:32px;width:auto}.rental-price{display:block;text-align:right;line-height:1.2}.rental-price>strong{font-size:24px}.rental-price>span{font-size:12px}
.rental-facts{display:flex;align-items:center;flex-wrap:wrap;gap:14px 20px;padding:11px 0;margin-top:14px;border-bottom:0;font-size:13px}
.rental-facts .rental-fact{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;line-height:1.5;border:0;padding:0;font-size:13px}
.rental-fact svg{display:block;width:21px;height:21px;flex:none}
.rental-title{font-size:13px;line-height:1.65;min-height:0;margin:6px 0 14px}
.rental-action{margin-top:auto;padding:11px 0;min-height:45px;font-size:13px}.rental-action span:last-child{font-size:22px}
.rental-availability{font-size:12px;padding:6px 10px;left:14px;bottom:14px}.rental-photo-arrow{right:14px;bottom:14px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1000px) and (min-width:761px){.rental-body{padding:18px 18px 0}.rental-heading h3{font-size:28px}.rental-price>strong{font-size:22px}.rental-facts{gap:12px}.rental-facts .rental-fact{gap:5px;font-size:12px}}
@media(max-width:760px){.rental-listings{gap:22px}.rental-body{padding:18px 20px 0}.rental-heading{flex-direction:row;gap:10px;flex-wrap:nowrap}.rental-heading h3{font-size:30px;width:auto}.rental-price{display:block;text-align:right}.rental-price>strong{font-size:23px}.rental-price>span{font-size:11px}.rental-facts{gap:15px;margin-top:13px}.rental-title{font-size:13px;min-height:0;margin:6px 0 13px}.rental-action{font-size:13px}}
@media(max-width:360px){.rental-body{padding:17px 16px 0}.rental-heading h3{font-size:27px}.rental-price>strong{font-size:21px}.rental-facts{gap:12px}.rental-facts .rental-fact{font-size:12px;gap:5px}.rental-fact svg{width:19px;height:19px}}

/* Browse each apartment on Courtview; only booking and applying leave the site. */
.rental-listings{align-items:start}.native-listing:hover{transform:none}.native-listing .rental-photo>img{transform:none!important}
.native-carousel{touch-action:pan-y pinch-zoom}.photo-counter{position:absolute;right:14px;top:14px;background:#102b3ae8;color:#fff;font-size:12px;padding:5px 9px;border-radius:3px}
.photo-nav{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border:1px solid #ffffff80;border-radius:50%;background:#faf9f5ed;color:var(--ink);font:32px/1 var(--sans);display:grid;place-items:center;box-shadow:0 2px 8px #102b3a30}
.photo-prev{left:12px}.photo-next{right:12px}.photo-nav:hover{background:#fff}
.native-listing .rental-body{padding:20px 22px 22px}.rental-posting-title{font-size:16px;line-height:1.55;font-weight:600;margin:0 0 15px;color:var(--ink)}
.native-listing .rental-heading h3{font-size:29px}.native-listing .rental-facts{margin-top:14px;margin-bottom:0}
.native-description{font-size:14px;line-height:1.8;color:var(--muted)}.native-description>p{margin:10px 0 0}.native-description strong{font-weight:600;color:var(--ink)}
.listing-more{margin-top:12px}.listing-more summary{display:list-item;cursor:pointer;color:var(--ink);font-size:13px;font-weight:600;min-height:32px;text-underline-offset:4px;text-decoration:underline}
.listing-description-rest p{margin:14px 0 0}.native-description .details-unavailable{font-size:12px}
.rental-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}
.rental-actions .button{justify-content:center;gap:8px;text-align:center;min-height:46px;padding:11px 10px;font-size:12px;line-height:1.5}
.rental-actions .apply-button{background:transparent;color:var(--ink);border-color:#8d9a9f}.rental-actions .apply-button:hover{background:#e7ebe7}
@media(max-width:760px){.native-listing .rental-body{padding:18px 20px 20px}.rental-posting-title{font-size:15px;margin-bottom:14px}.native-description{font-size:14px}.rental-actions{gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.rental-actions .button{font-size:12px;padding:10px 8px}.native-listing .rental-heading h3{font-size:28px}}
@media(max-width:360px){.native-listing .rental-body{padding:17px 16px 18px}.native-listing .rental-heading h3{font-size:26px}.rental-actions{grid-template-columns:1fr;gap:9px}.photo-nav{width:40px;height:40px}.photo-prev{left:10px}.photo-next{right:10px}}

/* Match closed cards; only the requested description grows on expansion. */
.rental-listings{align-items:stretch}.rental-listings.has-expanded-listing{align-items:start}
.rental-posting-title{min-height:0;margin-bottom:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.native-listing .rental-actions{margin:0 0 17px;padding:0 0 17px;border-top:0;border-bottom:1px solid var(--line)}
.photo-loading{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);max-width:calc(100% - 120px);padding:9px 13px;background:#102b3aeb;color:#fff;border-radius:4px;font-size:13px;text-align:center;pointer-events:none;z-index:2}
.photo-loading[hidden]{display:none}.photo-is-loading>img{opacity:.65}.native-carousel>img{transition:opacity .12s}

@media(max-width:760px){.rental-listings{align-items:start}.rental-posting-title{min-height:0}.native-listing .rental-actions{margin-bottom:16px;padding-bottom:16px}.photo-loading{font-size:12px;padding:8px 10px}}
@media(prefers-reduced-motion:reduce){.native-carousel>img{transition:none}}

/* Keep previews and their expansion controls aligned across listing cards. */
.native-description>p:first-child{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;height:5.4em}
.native-description:has(.listing-more[open])>p:first-child{display:block;height:auto;overflow:visible}
.rental-actions .rental-fact{font-size:inherit;line-height:inherit;font-weight:inherit;display:inline-flex;align-items:center;justify-content:center;gap:8px}
.rental-actions .rental-fact svg{width:18px;height:18px;flex:0 0 18px}

/* Bring available homes closer to the hero without crowding the heading. */
.availability.section{padding-top:38px}
.availability .section-top{margin-bottom:20px;gap:5%;align-items:center}
.availability .section-label{margin-bottom:12px}
.availability .section-top h2{font-size:clamp(36px,3.7vw,54px);line-height:1.1}
.availability .section-top>p{margin:0;max-width:320px;padding-bottom:0;line-height:1.7}
.availability .availability-toolbar{padding-block:10px;margin-bottom:20px}
@media(max-width:760px){.availability.section{padding-top:30px}.availability .section-top{margin-bottom:16px}.availability .section-top h2{font-size:clamp(32px,8vw,42px)}.availability .section-top>p{margin-top:10px;max-width:430px}.availability .availability-toolbar{margin-bottom:16px;padding-block:10px}}

.upcoming-note[hidden]{display:none}

.availability .section-top .availability-heading{display:flex;align-items:center;gap:16px;font-family:var(--sans);font-size:clamp(20px,2vw,26px);font-weight:500;line-height:1.3;letter-spacing:1.6px;text-transform:uppercase}
.availability-heading::before{content:"";display:block;flex:0 0 1px;width:1px;height:28px;background:var(--gold)}
@media(max-width:760px){.availability .section-top .availability-heading{font-size:20px;letter-spacing:1.2px;gap:13px}}

.native-listing .rental-availability{display:inline-flex;align-items:center;gap:9px}
.native-listing .rental-availability::before{width:8px;height:8px;flex:0 0 8px;margin-right:0;border-radius:50%}

/* A light contact row keeps the page moving into the floor plan. */
.leasing-inline{display:flex;justify-content:space-between;align-items:center;gap:24px;border-block:1px solid var(--line);padding:22px 0;margin-top:30px}
.leasing-inline h3{font:400 24px/1.3 var(--serif);margin:0}
.leasing-inline-actions{display:flex;align-items:center;gap:24px;flex-shrink:0}
.leasing-phone{font-size:14px;white-space:nowrap;text-decoration:underline;text-underline-offset:5px}
.leasing-contact{background:transparent;color:var(--ink);border:1px solid #8d9a9f;padding:11px 17px;font-size:12px;gap:24px}
.leasing-contact:hover{background:#e7ebe7;color:var(--ink)}
.availability-next{display:inline-flex;align-items:center;gap:18px;font-size:13px;font-weight:500;margin-top:20px;min-height:40px}
.availability-next span{font-size:23px;font-weight:400}
.availability-next:hover{text-decoration:underline;text-underline-offset:5px}
@media(max-width:900px){.leasing-inline{align-items:flex-start;flex-direction:column;gap:16px}.leasing-inline h3{font-size:23px}}
@media(max-width:480px){.leasing-inline-actions{width:100%;justify-content:space-between;gap:14px;flex-wrap:wrap}.leasing-contact{gap:16px}.leasing-phone{font-size:13px}}

/* Keep the listing-to-floor-plan transition compact. */
.availability.section{padding-bottom:20px}
.availability .leasing-inline{padding-block:18px;margin-top:24px}
.availability .availability-next{margin-top:10px;min-height:36px}
.apartments.section{padding-top:32px}
.apartments .section-top{margin-bottom:28px}
.apartments .section-label{margin-bottom:14px}
@media(max-width:760px){.availability.section{padding-bottom:16px}.apartments.section{padding-top:26px}.apartments .section-top{margin-bottom:22px}}

.plan-stat-label{display:flex;align-items:center;gap:7px;font-size:11px;line-height:1.5;margin-top:4px}
.plan-stat-label svg{display:block;width:20px;height:20px;flex:0 0 20px}
@media(max-width:480px){.plan-stats{gap:12px}.plan-stat-label{font-size:9px;gap:5px;letter-spacing:.3px}.plan-stat-label svg{width:17px;height:17px;flex-basis:17px}}

/* Let each floor-plan panel fit its content instead of stretching tall. */
.plan-layout{align-items:start;gap:24px;border:0;background:transparent}
.plan{justify-content:flex-start;padding:14px;border:1px solid var(--line);background:white}
.plan-image-button{display:block;position:relative;width:100%;border:0;padding:0;background:white;color:white;cursor:zoom-in;text-align:left}
.plan-image-button>img{display:block;width:100%;height:auto;object-fit:contain}
.plan-enlarge-label{display:flex;align-items:center;gap:14px;position:absolute;right:10px;bottom:10px;padding:9px 12px;background:var(--navy);color:white;font-size:12px;line-height:1.4}
.plan-enlarge-label>span{font-size:20px;line-height:1}
.plan .plan-description{padding:12px 2px 0}
.plan-detail{border:1px solid var(--line);padding:26px}
.plan-detail .eyebrow{font-size:10px;line-height:1.5;margin-bottom:14px}
.plan-detail h3{font-size:clamp(28px,2.3vw,34px);line-height:1.14}
.plan-detail .plan-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:400px;gap:14px;margin:20px 0 18px;padding:14px 0}
.plan-detail .features{font-size:14px;line-height:1.65;margin-bottom:16px}
.plan-detail .features li{margin:7px 0}
.plan-detail .features li::before{margin-right:9px}
.plan-detail .fine{font-size:11px;line-height:1.7;margin-top:0}
.plan-detail .button{margin-top:16px;font-size:12px;min-height:44px;padding:11px 16px}
@media(max-width:760px){.plan-layout{gap:16px}.plan{padding:10px}.plan-detail{padding:22px}.plan-detail h3{font-size:30px}}
@media(max-width:480px){.plan-detail{padding:20px}.plan-detail .features{font-size:13px}.plan-enlarge-label{font-size:11px;padding:7px 10px;right:7px;bottom:7px}}

/* Permanent plan description and aligned panel edges. */
.plan-layout{align-items:stretch}
.plan .plan-description{padding:8px 2px 0}
.plan-description p{font-size:14px;line-height:1.7;margin-top:10px}
.plan-detail{display:flex;flex-direction:column}
.plan-detail .fine{margin-bottom:16px}
.plan-detail .button{align-self:flex-start;margin-top:auto}
@media(max-width:760px){.plan-detail .button{margin-top:0}}

.plan-dimensions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;margin:16px 0 0;color:var(--ink)}
.plan-dimensions>div{display:flex;justify-content:space-between;align-items:baseline;gap:8px;min-width:0;border-bottom:1px solid var(--line);padding:9px 0}
.plan-dimensions dt{font-size:12px;font-weight:500}
.plan-dimensions dd{font-size:13px;margin:0;white-space:nowrap}
.plan-description .plan-dimension-note{font-size:11px;line-height:1.5;margin:10px 0 0;color:var(--muted)}
@media(max-width:1100px){.plan-dimensions>div{flex-direction:column;gap:3px}.plan-dimensions dd{font-size:12px}}

/* Compact room measurements: three across, then two and their note. */
.plan-dimensions{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 16px;margin-top:12px}
.plan-dimensions>div{flex-direction:column;align-items:flex-start;gap:4px;padding:8px 0}
.plan-dimensions dt{display:flex;align-items:center;gap:6px;font-size:12px;line-height:1.4}
.plan-dimensions dt svg{width:19px;height:19px;flex:0 0 19px}
.plan-dimensions dd{font-size:12px;line-height:1.5}
.plan-dimensions .dimension-note-cell{justify-content:center;border-bottom:0}
.dimension-note-cell dt{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.plan-dimensions .dimension-note-cell dd{font-size:10px;line-height:1.5;white-space:normal;color:var(--muted)}
.plan-detail .features{flex:1;display:flex;flex-direction:column;justify-content:space-between;margin-bottom:14px}
.plan-detail .features li{margin:4px 0}
.plan-detail .button{margin-top:0}
@media(max-width:600px){.plan-dimensions{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}.plan-detail .features{display:block;flex:none}}

.floor-plan-label::before{content:"";display:block;width:1px;height:18px;flex:0 0 1px;background:var(--gold)}

.apartments.section{padding-bottom:40px}
@media(max-width:760px){.apartments.section{padding-bottom:30px}}

/* Equal highlight columns with balanced space around each divider. */
.fact-strip{grid-template-columns:repeat(4,minmax(0,1fr));column-gap:0;text-align:center}
.fact-strip>div{min-width:0;padding-inline:clamp(12px,1.5vw,24px)}
@media(max-width:760px){.fact-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 0}.fact-strip>div{padding-inline:14px}}

/* Match the gaps above and below the highlight strip. */
.pets.section{padding-top:40px}
@media(max-width:760px){.pets.section{padding-top:30px}}

/* Keep pet information compact and connected to the community section. */
.pets.section{padding-bottom:24px;row-gap:16px;align-items:start}
.pet-intro>p:not(.eyebrow){margin-top:12px}
.pet-policy{padding:20px 24px}
.pet-policy .pet-fees{margin-top:12px}
.pet-policy .pet-fees>div{padding:12px 15px}
.pet-policy .pet-exception{margin-top:12px;padding-top:12px}
.pet-full-policy summary{padding:12px 0;min-height:44px}
.intro.section{padding-top:40px}
@media(max-width:760px){.pets.section{row-gap:20px;padding-bottom:20px}.pet-policy{padding:20px}.intro.section{padding-top:30px}}

.pet-companions{display:block;width:176px;height:47px;object-fit:contain;object-position:left center;margin-top:8px}
@media(max-width:760px){.pet-companions{width:160px;height:50px;margin-top:8px}}

.renewal{padding-block:60px}
@media(max-width:760px){.renewal{padding-block:35px}}

.gallery-section{padding-top:40px}
.gallery-section .section-top{margin-bottom:28px}
.gallery-section .section-label{margin-bottom:14px}
.gallery-label::before{content:"";display:block;width:1px;height:18px;flex:0 0 1px;background:var(--gold)}
@media(max-width:760px){.gallery-section{padding-top:30px}.gallery-section .section-top{margin-bottom:22px}.gallery-section .section-top>p{margin-top:12px}}

/* A compact transition from the gallery into the neighborhood. */
.gallery-section{padding-bottom:40px}
.location.section{padding-top:40px;align-items:start}
.location .section-label{margin-bottom:14px}
.neighborhood-label::before{content:"";display:block;width:1px;height:18px;flex:0 0 1px;background:var(--gold)}
@media(max-width:760px){.gallery-section{padding-bottom:30px}.location.section{padding-top:30px}}

.neighborhood-connections{margin-top:24px}
.neighborhood-connections>div{padding:15px 0}
.neighborhood-connections p{font-size:13px;line-height:1.75}
.neighborhood-connections p>b{font-size:14px;margin-bottom:4px}

/* Other available homes, followed by the property directory. */
.other-homes-prompt{display:flex;align-items:center;justify-content:space-between;gap:20px;border-block:1px solid var(--line);margin-top:24px;padding:18px 0}
.other-homes-prompt p{font-family:var(--serif);font-size:25px;margin:0}
.other-homes-prompt .text-link,.portfolio-heading-row .text-link{margin-top:0}
.portfolio-heading-row p.eyebrow{margin-bottom:10px}
.portfolio-availability{scroll-margin-top:115px;border-top:1px solid var(--line);padding-top:28px;margin-bottom:40px}
.portfolio-heading-row{display:flex;align-items:center;justify-content:space-between;gap:20px}
.portfolio-heading-row h3,.community-directory-heading h3{font-family:var(--serif);font-size:32px;font-weight:400;line-height:1.2;margin:10px 0}
.portfolio-status{font-size:12px;color:var(--muted);margin:16px 0}
.portfolio-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.portfolio-card{display:flex;flex-direction:column;min-width:0;color:var(--ink);text-decoration:none;background:var(--paper,#faf9f5);border:1px solid var(--line);transition:border-color .2s,box-shadow .2s}
.portfolio-card:hover{border-color:var(--gold);box-shadow:0 5px 18px #102e3b12}
.portfolio-photo{position:relative;aspect-ratio:4/3;background:#d9dfdc;overflow:hidden}
.portfolio-photo img{display:block;width:100%;height:100%;object-fit:cover}
.portfolio-photo-missing::before{content:"Apartment photos in listing";display:grid;place-items:center;height:100%;font-size:12px;color:var(--ink)}
.portfolio-available{position:absolute;bottom:10px;left:10px;padding:5px 8px;background:#faf9f5f2;font-size:10px;line-height:1.5}
.portfolio-body{display:flex;flex-direction:column;flex:1;padding:15px;min-width:0}
.portfolio-body h4{font-family:var(--serif);font-size:20px;font-weight:400;line-height:1.25;margin:0 0 5px;overflow-wrap:anywhere}
.portfolio-city{font-size:11px;color:var(--muted);margin:0 0 12px}
.portfolio-price{font-size:20px;font-weight:600;margin:0 0 8px}
.portfolio-price span{font-size:10px;font-weight:400;white-space:nowrap}
.portfolio-facts{font-size:11px;margin:0 0 10px}
.portfolio-title{font-size:12px;line-height:1.6;margin:0 0 16px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.portfolio-view{border-top:1px solid var(--line);padding-top:12px;margin-top:auto;font-size:12px;font-weight:600}
.portfolio-message{grid-column:1/-1;padding:22px;border:1px solid var(--line);font-size:14px}
.community-directory-heading{margin:0 0 24px}
.community-directory-heading p{font-size:13px;color:var(--muted)}
@media(min-width:1440px){.portfolio-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:1100px){.portfolio-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.other-homes-prompt,.portfolio-heading-row{align-items:flex-start;flex-direction:column;gap:12px}.portfolio-heading-row h3{font-size:28px}.portfolio-body{padding:13px}.portfolio-availability{padding-top:22px;margin-bottom:30px}}
@media(max-width:480px){.portfolio-grid{grid-template-columns:1fr}.portfolio-photo{aspect-ratio:16/10}}

/* Shared content rows keep the compact homes aligned across each row. */
.portfolio-body{display:grid;grid-template-rows:50px 34px 34px 32px 46px auto;gap:0}
.portfolio-body h4{height:26px;margin:0;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.portfolio-city{line-height:1.6;height:20px;margin:4px 0 0;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.portfolio-price{line-height:1.5;margin:0}
.portfolio-facts{margin:0;line-height:1.6}
.portfolio-title{margin:0;line-height:1.6;height:39px}
.portfolio-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;border-top:1px solid var(--line);padding-top:12px}
.portfolio-action{display:flex;align-items:center;justify-content:center;gap:6px;min-height:44px;border:1px solid var(--ink);font-size:11px;font-weight:600;white-space:nowrap;text-decoration:none}
.portfolio-action.showing{background:var(--navy);color:white}
.portfolio-action:hover{box-shadow:inset 0 0 0 1px currentColor}
.portfolio-action-icon{display:flex;align-items:center}
.portfolio-action-icon svg{width:14px;height:14px}
.portfolio-photo-count{position:absolute;top:10px;right:10px;padding:4px 7px;color:white;background:#102b3ae8;font-size:10px;pointer-events:none}
.portfolio-photo-arrow{position:absolute;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:44px;height:44px;border:1px solid #ffffff85;background:#102b3ad9;color:white;font-size:30px;line-height:1;z-index:1}
.portfolio-photo-arrow.previous{left:0}.portfolio-photo-arrow.next{right:0}
.portfolio-photo-arrow[hidden]{display:none}
.portfolio-photo-arrow:disabled{opacity:.6;cursor:wait}
.portfolio-photo-arrow:focus-visible,.portfolio-action:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.portfolio-card:hover{box-shadow:none;border-color:var(--line)}
@media(max-width:480px){.portfolio-body{grid-template-rows:50px 30px 36px 30px 46px auto}.portfolio-action{font-size:12px}}

.portfolio-body{grid-template-rows:26px 26px 34px 28px 46px 42px auto}
.portfolio-details-button{align-self:start;justify-self:start;min-height:34px;padding:3px 0;background:none;border:0;border-bottom:1px solid var(--ink);color:var(--ink);font-size:12px;font-weight:600;text-align:left}
.portfolio-detail-dialog{width:min(800px,94vw);max-height:88vh;padding:32px;overflow:auto;overscroll-behavior:contain}
.portfolio-detail-close{position:sticky;top:0;float:right;display:grid;place-items:center;width:44px;height:44px;border:0;background:var(--navy);color:white;font-size:28px;line-height:1;z-index:2}
.portfolio-detail-header{padding-right:55px;padding-bottom:22px;border-bottom:1px solid var(--line)}
.portfolio-detail-header h2{font-size:36px;letter-spacing:-.5px;line-height:1.15}
.portfolio-detail-header p{font-size:14px;margin-top:14px}
.portfolio-detail-content{padding:22px 0;line-height:1.85}
.portfolio-detail-content>h3{font-family:var(--serif);font-size:28px;margin-bottom:16px}
.portfolio-detail-content p{font-size:14px;margin-top:0;margin-bottom:18px;white-space:pre-line}
.portfolio-detail-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:22px}
.portfolio-detail-groups h3{font-size:16px;font-weight:600}
.portfolio-detail-groups ul{padding-left:20px;font-size:13px;margin:10px 0 0}
.portfolio-detail-dialog>.portfolio-actions{padding-top:18px}
.portfolio-detail-dialog .portfolio-action{font-size:13px;min-height:48px}

/* Compact transitions from the map through FAQs into the other communities. */
.location.section{padding-bottom:36px}
.faq.section{padding-block:36px;align-items:start}
.faq-intro p.eyebrow{margin-bottom:14px}
.faq-intro>.text-link{margin-top:20px}
.faq-questions>details{padding:14px 0}
.faq summary{min-height:32px}
.other-communities.section{padding-top:40px}
@media(max-width:760px){.location.section{padding-bottom:26px}.faq.section{padding-block:26px;gap:24px}.faq-questions>details{padding:12px 0}.faq-intro>h2{font-size:40px}.other-communities.section{padding-top:30px}}
@media(max-width:480px){.portfolio-body{grid-template-rows:26px 26px 36px 28px 46px 42px auto}.portfolio-detail-dialog{padding:20px}.portfolio-detail-header h2{font-size:29px}.portfolio-detail-header p{font-size:12px}.portfolio-detail-groups{grid-template-columns:1fr;gap:18px}.portfolio-detail-dialog .portfolio-action{font-size:11px;white-space:normal;text-align:center;padding:8px}}

.collection-label::before{content:"";display:block;width:1px;height:18px;flex:0 0 1px;background:var(--gold)}

.access-housing.section{padding-block:36px;align-items:start}
.access-housing p.eyebrow{margin-bottom:14px}
.access-housing p:not(.eyebrow){margin-top:14px}
.access-housing .text-link{margin-top:20px}
@media(max-width:760px){.access-housing.section{padding-block:26px;gap:26px}}

@media(max-width:760px) and (min-width:601px){.community-info h3{white-space:normal;min-height:51px}}
@media(max-width:600px){.community-info h3{white-space:normal;min-height:0}}

/* Direct routes to the parts of the property and portfolio visitors use most. */
.site-header{gap:24px;padding-inline:3.2%}
.site-header nav{gap:20px;font-size:12px;white-space:nowrap}
.site-header nav>a:not(.button){display:inline-flex;align-items:center;min-height:44px;padding-block:10px}
.site-header nav>a[aria-current]:not(.button){border-bottom-color:var(--gold)}
.site-header .nav-availability{font-size:12px;min-height:48px;padding:14px 18px;gap:20px}
.site-header .menu-toggle{font-size:12px;gap:12px}
@media(max-width:1100px){
  .site-header{height:82px;padding-inline:4%;gap:16px}
  .site-header .menu-toggle{display:flex;align-items:center;background:none;border:0;padding:10px 0;color:var(--ink);min-height:44px}
  .site-header .menu-toggle>span{font-size:23px;line-height:1;width:22px;text-align:center}
  .site-header nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:18px 4% 24px;border-bottom:1px solid var(--line);box-shadow:0 12px 20px #102b3a0d;white-space:normal;max-height:calc(100dvh - 82px);overflow-y:auto;overscroll-behavior:contain}
  .site-header nav.open{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:4px 20px}
  .site-header nav>a:not(.button){font-size:14px;min-height:46px;padding-block:10px;border-bottom:1px solid var(--line)}
  .site-header .nav-availability{grid-column:1/-1;justify-content:space-between;margin-top:12px;font-size:13px;min-height:48px}
}
@media(max-width:760px){.site-header{height:77px;padding-inline:var(--gutter)}.site-header nav{padding-inline:var(--gutter);max-height:calc(100dvh - 77px)}}

/* Finish the directory at the final row of property cards. */
.other-communities.section{padding-bottom:36px}
@media(max-width:760px){.other-communities.section{padding-bottom:26px}}

/* Quietly repeat the Courtview mark within the navy hero panel. */
.hero-content{isolation:isolate;overflow:hidden}
.hero-content::before{content:"";position:absolute;top:12%;right:-9%;width:84%;max-width:460px;aspect-ratio:1;background:url("assets/courtview-mark.svg") center/contain no-repeat;opacity:.06;z-index:-1;pointer-events:none}
@media(max-width:760px){.hero-content::before{top:7%;right:-14%;width:88%;max-width:380px;opacity:.05}}

/* A compact leasing contact page, ready for private server-side delivery. */
.contact-intro.section{padding-block:36px;gap:6%;align-items:center}
.contact-intro h1{font-size:clamp(42px,4.4vw,62px)}
.contact-intro .eyebrow{margin-bottom:18px}
.contact-intro .contact-intro-copy>p:not(.eyebrow){font-size:15px;margin-top:18px}
.contact-intro .button{margin-top:20px}
.contact-intro #contact-photo{height:280px}
.contact-intro #contact-photo[hidden],.contact-form-panel[hidden]{display:none}
.contact-form-panel{background:var(--paper);color:var(--ink);padding:26px;border:1px solid var(--line);min-width:0}
.contact-form-panel h2{font-size:32px;letter-spacing:-.5px}
.contact-form-panel>p{font-size:13px;line-height:1.7;margin-top:10px;color:var(--muted)}
.inquiry-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;margin-top:20px}
.inquiry-grid label{font-size:12px;font-weight:600;line-height:1.6}
.inquiry-grid label>span{font-size:10px;font-weight:400;color:var(--muted)}
.inquiry-grid input,.inquiry-grid select,.inquiry-grid textarea{display:block;width:100%;margin-top:5px;padding:10px 11px;border:1px solid #85949b;border-radius:0;background:white;color:var(--ink);font:16px/1.5 var(--sans);min-height:44px}
.inquiry-grid textarea{resize:vertical;min-height:90px}
.inquiry-message{grid-column:1/-1}
.inquiry-honey{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.inquiry-status{font-size:13px;line-height:1.7;margin-top:14px}
.inquiry-status:empty{display:none}.inquiry-status.is-error{color:#9a2626}
.contact-form-panel .button{margin-top:14px;width:100%;justify-content:space-between}
.contact-form-panel .button:disabled{opacity:.65;cursor:wait}
.inquiry-privacy{font-size:11px;line-height:1.7;margin-top:12px;color:var(--muted)}
.inquiry-privacy a{text-decoration:underline;text-underline-offset:3px}
.contact-options.section{padding-block:36px;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.contact-options article{padding-top:18px}.contact-options .eyebrow{margin-bottom:10px}
.contact-options h2{font-size:28px;letter-spacing:-.4px}.contact-options p:not(.eyebrow){font-size:14px;line-height:1.8;margin-top:12px}
.contact-options .text-link{font-size:12px;margin-top:16px}
@media(max-width:900px){.contact-intro.section{grid-template-columns:1fr;gap:24px}.contact-intro .contact-intro-copy>p:not(.eyebrow){max-width:600px}.contact-options.section{grid-template-columns:1fr;gap:24px}.contact-intro #contact-photo{height:240px}}
@media(max-width:600px){.contact-intro.section,.contact-options.section{padding-block:26px}.contact-intro h1{font-size:42px}.contact-form-panel{padding:20px}.inquiry-grid{grid-template-columns:1fr}.contact-form-panel h2{font-size:30px}}

.contact-form-panel [hidden]{display:none!important}
.contact-form-panel.is-complete{min-height:350px;display:flex;align-items:center;justify-content:center}
.contact-confirmation{width:100%;text-align:center;padding:16px 8px}
.confirmation-check{display:block;width:56px;height:56px;margin:0 auto 20px;color:#8d723c}
.contact-confirmation h2{font-size:42px}
.contact-confirmation p{font-size:14px;line-height:1.8;margin:10px auto 0;max-width:360px;color:var(--muted)}
.contact-confirmation .confirmation-lead{font-size:17px;font-weight:600;color:var(--ink)}
.contact-confirmation .button{margin-top:22px;font-size:12px}
.contact-confirmation .text-link{margin-top:18px;background:none;border-top:0;border-left:0;border-right:0;color:var(--ink);font-size:12px}
@media(max-width:600px){.contact-form-panel.is-complete{min-height:320px}.contact-confirmation{padding:10px 0}.contact-confirmation h2{font-size:38px}}

/* Israel Putnam residence types and supplied photography. */
.residence-photo{margin:0;background:var(--sand);position:relative;min-width:0}.residence-photo>img{display:block;width:100%;height:100%;min-height:400px;object-fit:cover}.residence-photo>figcaption{position:absolute;bottom:0;left:0;right:0;padding:18px 22px;background:linear-gradient(transparent,#102b3abf);color:white;font-size:9px;letter-spacing:1px}.unit-types{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:50px;border-top:1px solid #102b3a26;border-bottom:1px solid #102b3a26}.unit-type{padding:32px 26px}.unit-type:first-child{padding-left:0}.unit-type+ .unit-type{border-left:1px solid #102b3a26}.unit-type h3{font-family:var(--serif);font-size:32px;font-weight:400;line-height:1.15;margin:20px 0}.unit-facts{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap;font-size:12px;line-height:1.8}.unit-facts strong{font-size:24px;font-weight:400}.unit-facts>span{margin:0 4px}.unit-type .text-link{margin-top:20px;font-size:10px}.unit-note{margin-top:18px}.gallery button:nth-child(7),.gallery button:nth-child(8){grid-column:span 2}@media(max-width:760px){.unit-types{grid-template-columns:1fr;margin-top:30px}.unit-type,.unit-type:first-child{padding:27px 0}.unit-type+ .unit-type{border-left:0;border-top:1px solid #102b3a26}.unit-type h3{font-size:32px}.residence-photo>img{height:340px;min-height:0}.gallery button:nth-child(7),.gallery button:nth-child(8){grid-column:span 1}}

.hero-photo>img{object-position:50% center}.residence-photo>img{min-height:300px}.unit-types{margin-top:26px}.unit-type{padding-top:24px;padding-bottom:24px}.unit-type h3{font-size:27px}.unit-note{font-size:10px}.wordmark{font-size:clamp(18px,1.65vw,25px)}@media(max-width:760px){.residence-photo>img{height:280px;min-height:0}.unit-type h3{font-size:27px}}

/* Keep form guidance readable inside the dark contact section. */
.contact-intro .contact-form-panel #contact-form-caption,.contact-intro .contact-form-panel .inquiry-privacy,.contact-intro .contact-form-panel .contact-confirmation p{color:var(--muted)}.contact-intro .contact-form-panel .confirmation-lead{color:var(--ink)}.contact-intro .contact-form-panel .inquiry-status{color:var(--ink)}.contact-intro .contact-form-panel .inquiry-status.is-error{color:#9a2626}
