/* Navigation, touch targets and resident services */
.offer-bar{background:#b59b48;color:#182e25;display:flex;justify-content:center;align-items:center;gap:24px;font-size:13px;font-weight:600;padding:10px 20px}
.offer-bar a{margin:0;border-color:#584a23;min-height:30px;display:inline-flex;align-items:center}
.header{padding:0 5vw;min-height:100px;gap:35px;flex-wrap:nowrap}
.header .brand{display:flex;align-items:center;line-height:0;flex:0 0 auto}
.brand-logo{width:250px;height:47px;object-fit:contain}
.header nav{display:flex;align-items:center;gap:6px;margin-left:auto;font-size:14px}
.header nav a{display:flex;align-items:center;min-height:48px;padding:12px 16px;border-radius:4px;font-weight:500;white-space:nowrap}
.header nav a:hover,.header nav a[aria-current="page"]{background:#ffffff16;text-decoration:none}
.header nav a[aria-current="page"]{box-shadow:inset 0 -3px #b59b48}
.header nav a.nav-cta{background:#f5f3ed;color:#263f35;margin-left:12px;border:1px solid #f5f3ed}
.menu-toggle{display:none}
.footer-top{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:36px;padding:64px 5vw}
.footer-top nav,.footer-contact{display:flex;flex-direction:column;align-items:flex-start;gap:3px}
.footer-top h2{font:600 15px Arial,sans-serif;letter-spacing:0;margin:0 0 14px;color:#d8c893}
.footer-top a:not(.footer-brand){font-size:15px;line-height:1.5;padding:10px 0;min-height:44px}
.footer-top p{font-size:15px;line-height:1.7;margin:0 0 12px}
.footer-top .footer-tagline{margin-top:24px;color:#e2e6dc}
.footer-bottom{font-size:13px;padding:22px 5vw;border-top:1px solid #ffffff25}
.compact-intro{padding-bottom:48px;max-width:1250px}.compact-intro>p{max-width:720px}
.feature-split{display:grid;grid-template-columns:1.15fr 1fr;background:#e9e8df}
.feature-split>div:last-child{padding:65px 7vw 65px 6vw;align-self:center}
.feature-photo{width:100%;height:100%;min-height:480px}
.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px;margin:36px 0}
.detail-grid article{border-top:1px solid #9ba897;padding-top:24px}
.detail-grid h3{font-size:34px;letter-spacing:-.025em;margin:20px 0}
.detail-grid p{font-size:16px}.detail-number{font-size:11px;letter-spacing:.1em;font-weight:600;color:#746024}
.apartment-details{background:#eeece3}.apartment-details .wide-photo{margin:0;height:370px}
.location-card{background:#e9e8df;display:grid;grid-template-columns:1fr 1fr;gap:70px}
.location-map{padding:35px;background:#f5f3ed;border:1px solid #c5ccbd}
.location-map>span{font-size:11px;letter-spacing:.15em}.location-map h3{font-size:42px;margin:24px 0}
.maintenance-layout{display:grid;grid-template-columns:0.85fr 1.15fr;gap:85px;border-top:1px solid #c8d0c3}
.urgent-notice{border-left:4px solid #a95534;padding:20px 24px;background:#ece6d9;margin:28px 0}
.urgent-notice p{font-size:15px;margin:12px 0}.urgent-notice a{font-size:16px;font-weight:bold;display:inline-block;padding:8px 0}
.inquiry-form input,.inquiry-form select,.inquiry-form textarea{font-size:16px;min-height:48px}
.inquiry-form label{font-size:15px}
@media(max-width:1150px){.header{gap:18px;padding:0 4vw}.brand-logo{width:220px;height:42px}.header nav a{padding:12px 10px;font-size:13px}.footer-top{grid-template-columns:1fr 1fr;gap:35px}.maintenance-layout{gap:45px}}
@media(max-width:800px){
.offer-bar{font-size:12px;gap:4px;flex-direction:column;padding:8px 12px;line-height:1.4}.offer-bar a{display:inline-flex;min-height:26px;text-decoration:underline}
.header{min-height:80px;padding:16px 6vw;display:grid;grid-template-columns:1fr auto;align-items:center;gap:0 12px}
.brand-logo{width:min(230px,57vw);height:auto;max-height:44px}
.menu-toggle{display:flex;align-items:center;justify-content:center;gap:8px;min-width:80px;min-height:46px;padding:8px 10px;background:transparent;color:#fff;border:1px solid #a3ad98;border-radius:4px;font-size:14px}
.menu-icon{font-size:19px}.header nav{display:none;grid-column:1/-1;width:100%;margin:18px 0 0;padding-top:14px;border-top:1px solid #ffffff30;gap:4px;flex-direction:column;align-items:stretch}
.header nav.is-open{display:flex}.header nav a{font-size:16px;padding:13px 15px;min-height:48px;justify-content:flex-start}
.header nav a.nav-cta{margin:8px 0 0;justify-content:center}
.hero-copy{padding-top:32px}.hero h1{font-size:clamp(42px,12vw,61px);margin-bottom:22px}.hero-image{min-height:290px}
.hero-note{font-size:12px!important}.hero-copy>p{font-size:16px}.hero .actions{margin:24px 0}
.footer-top{padding:45px 7vw;grid-template-columns:1fr 1fr;gap:35px 24px}
.footer-top>div:first-child,.footer-contact{grid-column:1/-1}
.footer-top h2{font-size:15px}.footer-top a:not(.footer-brand){font-size:15px;min-height:46px}
.footer-top .brand-logo{width:250px;max-height:none}.footer-tagline{font-size:16px!important}
.footer-bottom{padding:22px 7vw 100px;display:flex;flex-direction:column;gap:12px;align-items:flex-start}
.feature-split,.location-card,.maintenance-layout{grid-template-columns:1fr;gap:30px}
.feature-photo{min-height:0;height:300px}.feature-split>div:last-child{padding:28px 7vw 42px}
.detail-grid{grid-template-columns:1fr;gap:22px}.detail-grid h3{font-size:31px}.detail-grid article{padding-top:20px}
.location-map{padding:26px}.location-map h3{font-size:36px}.maintenance-layout{gap:25px}
.compact-intro{padding-top:40px;padding-bottom:38px}.page-intro h1{font-size:clamp(40px,11vw,58px)}
.section{padding-left:7vw;padding-right:7vw}.actions{flex-wrap:wrap;gap:18px}
.inquiry-form{min-width:0}.inquiry-form input,.inquiry-form textarea,.inquiry-form select{max-width:100%;width:100%}
.inquiry-form .check input{width:20px;min-height:20px;flex:0 0 20px}
.maintenance-layout h2{font-size:40px}.mobile-contact{padding-bottom:max(8px,env(safe-area-inset-bottom))}
}
@media(max-width:360px){.footer-top{grid-template-columns:1fr}.footer-top>*,.footer-contact{grid-column:auto}.brand-logo{width:195px}.menu-toggle{min-width:68px}.header{padding-left:5vw;padding-right:5vw}}

/* Direction-aware header: the offer stays in normal page flow. */
.header{position:sticky;top:0;z-index:30;transition:transform .22s ease;will-change:transform}
.header.header-hidden{transform:translateY(-105%);pointer-events:none}
.header:focus-within{transform:translateY(0);pointer-events:auto}
.header.header-revealed{box-shadow:0 5px 20px #14251c24}
.explore-jumps{display:flex;flex-wrap:wrap;gap:12px;padding:30px 7vw;border-bottom:1px solid #c8d0c3}
.explore-jumps a{display:inline-flex;align-items:center;border:1px solid #9ca991;border-radius:30px;padding:11px 18px;min-height:46px;font-size:14px}
.explore-jumps a:hover{background:#e6e7db;text-decoration:none}
.explore-section{scroll-margin-top:115px}.explore-section:nth-of-type(even){background:#eeece3}
.explore-intro{max-width:720px}.explore-section .detail-grid{row-gap:44px}
.destination-links{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.destination-links a{min-height:44px;display:inline-flex;align-items:center;padding:10px 0;font-size:14px}
.transit-panel{display:grid;grid-template-columns:1fr 1fr;gap:70px;border-top:1px solid #c8d0c3}
@media(max-width:800px){.explore-jumps{padding:24px 7vw;gap:10px}.explore-jumps a{font-size:13px}.explore-section{scroll-margin-top:92px}.explore-section .detail-grid{row-gap:28px}.transit-panel{grid-template-columns:1fr;gap:20px}.header nav.is-open{max-height:calc(100dvh - 130px);overflow-y:auto}}
@media(prefers-reduced-motion:reduce){.header{transition:none}}

.laundry-feature{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center;background:#e9e8df}
.laundry-feature figure,.property-gallery figure{margin:0}.laundry-photo{width:100%;max-width:460px;height:auto;object-fit:contain}
figcaption{font-size:13px;margin-top:12px;color:#59665c}.property-gallery{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin:35px 0 65px}.property-gallery .wide-photo{margin:0;height:340px}
.copyright-block{display:flex;flex-wrap:wrap;gap:8px 25px}.copyright-block span:last-child{color:#d8c893}
.privacy-policy h2{font-size:30px;letter-spacing:-.02em;margin-top:38px}.privacy-policy p{font-size:16px;max-width:820px}
.media-upload{margin:25px 0;padding:22px;border:1px solid #b0baaa;min-width:0}.media-upload legend{font-weight:600;padding:0 8px}.media-upload legend span{font-weight:400}
.media-upload p,.media-upload li{font-size:14px}.media-upload input[type=file]{padding:12px 0;border:0;background:transparent;font-size:14px;height:auto}
.capture-options{display:grid;grid-template-columns:1fr 1fr;gap:16px}.media-upload ul{padding-left:18px;overflow-wrap:anywhere}
.form-connection-note{font-size:14px;background:#ebe7da;padding:16px}.form-connection-note a,.privacy-policy a{text-decoration:underline}
@media(max-width:800px){.laundry-feature,.property-gallery{grid-template-columns:1fr;gap:25px}.capture-options{grid-template-columns:1fr}.copyright-block{flex-direction:column}.property-gallery .wide-photo{height:auto}.media-upload{padding:15px}}

/* Launch refinements retain the original cream, forest-green and serif design. */
a,button,select{touch-action:manipulation}button,a,select{ -webkit-tap-highlight-color:transparent }
:focus-visible{outline:3px solid #ad5d35;outline-offset:4px}.contact-actions{display:flex;flex-wrap:wrap;gap:14px}.contact-actions p{flex-basis:100%}.contact-actions .button.light{color:#263f35}.unit-special{font-size:14px;background:#eee8d9;color:#263f35;padding:14px;line-height:1.55}.unit-special a{text-decoration:underline}.card-content>.text-link{display:inline-flex;align-self:flex-start;min-height:44px;align-items:center}.photo-pending{display:flex;align-items:center;justify-content:center;flex-direction:column;height:100%;min-height:300px;text-align:center;background:#e8e7dc;color:#263f35;font-size:16px;line-height:1.8}.offer-popup{position:fixed;z-index:20;right:22px;bottom:22px;width:min(420px,calc(100% - 32px));background:#f5f3ed;color:#263f35;padding:26px;border:1px solid #a6b29f;box-shadow:0 10px 40px #182d3440;max-height:65dvh;overflow:auto}.offer-popup h2{font-size:30px;letter-spacing:-.025em;margin:10px 0}.offer-popup p{font-size:15px;margin-bottom:14px}.offer-popup .fine{font-size:12px}.offer-popup .eyebrow{margin:0 25px 8px 0}.offer-close{position:absolute;right:6px;top:6px;width:44px;height:44px;font-size:26px;background:transparent;border:0;color:#263f35;cursor:pointer}.offer-popup .button{width:100%;justify-content:center}.section-heading{flex-wrap:wrap}.filter select{min-height:44px;font-size:16px}.unit-spec{font-size:15px}.price-detail{font-size:14px}.unit-card .card-image{min-height:310px}.mobile-contact{padding-bottom:max(8px,env(safe-area-inset-bottom))}
@media(min-width:1101px){.featured-grid{grid-template-columns:1fr 1fr}.unit-card{grid-template-columns:1fr}.card-image{min-height:340px}.card-content{padding:30px}}
@media(max-width:720px){body{padding-bottom:72px}.offer-popup{left:16px;right:16px;bottom:calc(78px + env(safe-area-inset-bottom));padding:20px;max-height:49dvh}.offer-popup h2{font-size:28px}.offer-popup p{font-size:14px}.offer-popup .fine{font-size:12px}.offer-popup .eyebrow{font-size:9px}.offer-bar{font-size:12px;line-height:1.5}.hero h1{font-size:clamp(46px,14vw,61px)}.page-intro h1{font-size:clamp(43px,12vw,58px)}.actions{flex-wrap:wrap;gap:18px}.contact-actions .button{width:100%}.card-content{padding:25px}.unit-card .card-image{min-height:280px}.section-heading .filter{width:100%}.offer{gap:20px}.offer h2{font-size:38px}.brand-logo{max-width:64vw}.offer-popup .button{min-height:48px}.button{font-size:15px}.footer-bottom{padding-bottom:30px}}

.offer-popup{z-index:100}

.analytics-choice{padding:22px 5vw;background:#eeeee4;border-bottom:1px solid #a7b29e;display:flex;align-items:center;justify-content:space-between;gap:24px;position:relative}.analytics-choice h2{font:600 17px Arial,sans-serif;letter-spacing:0;margin:0 0 8px;line-height:1.4}.analytics-choice p{font-size:14px;margin:0;max-width:750px;line-height:1.5}.analytics-choice a{text-decoration:underline}.consent-actions{display:flex;gap:12px;flex-shrink:0}.consent-actions .button{min-height:48px;font-size:14px;padding:12px 18px;justify-content:center}.privacy-settings{color:inherit;border:0;border-bottom:1px solid;background:transparent;text-align:left;min-height:44px;cursor:pointer}.consent-status:empty{display:none}@media(max-width:720px){.analytics-choice{display:block;padding:18px 7vw}.analytics-choice h2{font-size:16px}.analytics-choice p{font-size:13px}.consent-actions{margin-top:14px}.consent-actions .button{flex:1;padding:12px;font-size:13px}}

/* Owner revision: persistent offer banner and a centered, nonmodal offer card. */
.offer-bar{position:sticky;top:0;z-index:50}
.header{top:var(--offer-bar-height,0px)}
html{scroll-padding-top:calc(var(--offer-bar-height,0px) + var(--site-header-height,100px) + 16px)}
.offer-popup{left:50%;right:auto;top:50%;bottom:auto;transform:translate(-50%,-50%);width:min(480px,calc(100% - 32px));--popup-clearance:max(calc(var(--offer-bar-height,0px) + var(--site-header-height,100px) + 12px),calc(var(--mobile-cta-height,0px) + 12px));max-height:max(100px,calc(100dvh - var(--popup-clearance) - var(--popup-clearance)));overscroll-behavior:contain;scroll-padding-top:52px}
.offer-close{position:sticky;top:-20px;float:right;margin:-14px -14px -30px 8px;z-index:1;background:#f5f3ed;border:1px solid #c8d0c3;border-radius:50%}
body:has(.menu-toggle[aria-expanded="true"]) .offer-popup{visibility:hidden;pointer-events:none}
@media(max-width:720px){.offer-popup{left:50%;right:auto;top:50%;bottom:auto;width:calc(100% - 32px);padding:20px}.header nav.is-open{max-height:calc(100dvh - var(--offer-bar-height,0px) - 170px - env(safe-area-inset-bottom));overflow-y:auto}.offer-close{top:-14px;margin:-10px -10px -30px 8px}}

/* Center in the usable area when the independent analytics-choice panel is on screen. */
.offer-popup{top:var(--promo-center-y,50%);max-height:var(--promo-max-height,65dvh)}
