/* Corporate Stays landing page */
body{margin:0;background:#F3F5F2}
:root{color-scheme:only light}
a{color:#0E2B25}a:hover{color:#1C4A40}
.wrap{max-width:1240px;margin:0 auto;padding:0 32px;box-sizing:border-box}
input,select{font:inherit}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.lift{transition:translate .25s ease,box-shadow .25s ease}
.lift:hover{translate:0 -4px;box-shadow:0 14px 30px rgba(14,43,37,.10)}
.btn{transition:translate .2s ease}
.btn:hover{translate:0 -2px}
.rot{display:block;height:1.08em;overflow:hidden}
.rot-in{display:flex;flex-direction:column}
.rot-in span{display:block;height:1.08em}
.mq{display:flex;gap:40px;width:max-content}
.mobile-cta{display:none}
@keyframes rise{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
@keyframes pop{0%{opacity:0;transform:translateY(14px) scale(.94)}100%{opacity:1;transform:none}}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes rotw{0%,20%{transform:translateY(0)}25%,45%{transform:translateY(-1.08em)}50%,70%{transform:translateY(-2.16em)}75%,95%{transform:translateY(-3.24em)}100%{transform:translateY(-4.32em)}}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes reveal{from{opacity:0;transform:translateY(44px)}to{opacity:1;transform:none}}
@keyframes grow{from{transform:scaleY(.08);opacity:.2}to{transform:none;opacity:1}}
@keyframes prog{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes shadow{from{box-shadow:none}to{box-shadow:0 6px 24px rgba(14,43,37,.10)}}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(201,165,76,.55)}100%{box-shadow:0 0 0 12px rgba(201,165,76,0)}}
@media (prefers-reduced-motion:no-preference){
 .rise{animation:rise .8s cubic-bezier(.2,.7,.2,1) both}
 .d1{animation-delay:.1s}.d2{animation-delay:.2s}.d3{animation-delay:.3s}.d4{animation-delay:.4s}
 .pop{animation:pop .6s cubic-bezier(.2,.8,.2,1.2) both}
 .p1{animation-delay:.9s}.p2{animation-delay:1.5s}.p3{animation-delay:2.1s}
 .float{animation:rise .9s .35s cubic-bezier(.2,.7,.2,1) both,floaty 6s 1.3s ease-in-out infinite}
 .rot-in{animation:rotw 10s cubic-bezier(.7,0,.3,1) infinite}
 .mq{animation:marquee 90s linear infinite}
 .marquee:hover .mq{animation-play-state:paused}
 .dot{animation:pulse 1.8s ease-out infinite}
 @supports (animation-timeline:view()){
  .split:not(.hero)>*,.g3>*,.g4>*,.g2>*,.sec h2,.reveal{animation:reveal linear both;animation-timeline:view();animation-range:entry 0% cover 26%}
  .g3>*:nth-child(2),.g4>*:nth-child(2),.split:not(.hero)>*:nth-child(2){animation-range:entry 6% cover 32%}
  .g3>*:nth-child(3),.g4>*:nth-child(3){animation-range:entry 12% cover 38%}
  .g4>*:nth-child(4){animation-range:entry 18% cover 44%}
  .grow{transform-origin:bottom;animation:grow linear both;animation-timeline:view()}
  .progress{transform-origin:left;animation:prog linear both;animation-timeline:scroll(root)}
  .navbar{animation:shadow linear both;animation-timeline:scroll(root);animation-range:0 160px}
 }
}
@media (max-width:1240px){
 .navlinks{display:none!important}
 .mnav{display:block!important}
}
@media (max-width:1000px){
 .g4{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .g3{grid-template-columns:repeat(1,minmax(0,1fr))!important}
 .split{grid-template-columns:repeat(1,minmax(0,1fr))!important}
 .navlinks{display:none!important}
 .h1{font-size:46px!important}
 .h2{font-size:34px!important}
 .chip{position:static!important;margin-top:10px;width:auto!important}
 .chips{display:flex;flex-direction:column;gap:0}
}
@media (max-width:600px){
 .wrap{padding:0 16px}
 .g4{grid-template-columns:repeat(1,minmax(0,1fr))!important}
 .g2{grid-template-columns:repeat(1,minmax(0,1fr))!important}
 .h1{font-size:38px!important}
 .topbar-extra,.nav-cta{display:none!important}
 .sec{padding:64px 0!important}
 .hero{padding-top:48px!important;padding-bottom:56px!important;gap:36px!important}
 .months{grid-template-columns:repeat(6,minmax(0,1fr))!important}
 .mobile-cta{display:flex;position:fixed;left:12px;right:12px;bottom:12px;z-index:50;gap:8px}
 .page{padding-bottom:84px}
 .cardwrap{padding:0!important}
}

/* WordPress build additions */
.csl *,.csl *::before,.csl *::after{box-sizing:border-box}
.csl h1,.csl h2,.csl p,.csl figure,.csl blockquote{margin:0}
.csl img{max-width:100%;height:auto}
.pill{position:relative;display:inline-flex}
.pill input{position:absolute;opacity:0;width:1px;height:1px}
.pill span{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:999px;border:1.5px solid #B8C6C0;background:#FFFFFF;color:#10201C;font-weight:500;font-size:15px;cursor:pointer;transition:background-color .15s ease,color .15s ease}
.pill input:checked+span{background:#0E2B25;border-color:#0E2B25;color:#FFFFFF;font-weight:700}
.pill input:focus-visible+span{outline:3px solid #C9A54C;outline-offset:2px}
.csl input:focus-visible,.csl a:focus-visible,.csl button:focus-visible,.csl summary:focus-visible{outline:3px solid #C9A54C;outline-offset:2px}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.faq summary{list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq-sign::after{content:"+";font-family:'DM Sans',sans-serif;font-size:26px;font-weight:400;color:#1C4A40}
.faq[open] .faq-sign::after{content:"\2212"}
.csl-thanks{display:none}
.csl-thanks:target,.csl-thanks.on{display:flex}
.csl-done .csl-form{display:none}
.csl-form[aria-busy="true"] .csl-submit{opacity:.6;pointer-events:none}
.navlinks a{white-space:nowrap}
.mnav{display:none;position:relative}
.mnav summary{list-style:none;width:44px;height:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:12px}
.mnav summary::-webkit-details-marker{display:none}
.mnav-panel{position:absolute;right:0;top:52px;width:260px;background:#FFFFFF;border:1px solid #DCE3DF;border-radius:16px;box-shadow:0 18px 40px rgba(14,43,37,.16);padding:10px;display:flex;flex-direction:column}
.mnav-panel a{padding:12px 14px;border-radius:10px;text-decoration:none;font-weight:500;color:#0E2B25}
.mnav-panel a:hover{background:#F3F5F2}
.mnav-panel .mnav-cta{background:#0E2B25;color:#FFFFFF;text-align:center;font-weight:700;margin-top:6px}
@media (max-width:1000px){.cardwrap{padding:0!important}}
/* third-party widgets on this page */
.sfsi_outr_div,#sfsi_floater,.sfsi_widget,.usm-widget{display:none!important}
@media (max-width:600px){.wa__btn_popup{bottom:84px!important}}
@keyframes growx{from{transform:scaleX(.05)}to{transform:none}}
@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){.grow-x{transform-origin:left;animation:growx linear both;animation-timeline:view();animation-range:entry 10% cover 40%}}}
.js-mq .mq{animation:none!important;will-change:transform}
.marquee.dragging{cursor:grabbing!important}
/* ---------- Apartments portfolio ---------- */
.apt-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.apt{background:#FFFFFF;border-radius:18px;overflow:hidden;display:flex;flex-direction:column;transition:translate .25s ease,box-shadow .25s ease}
.apt:hover{translate:0 -4px;box-shadow:0 14px 30px rgba(14,43,37,.10)}
.apt[hidden]{display:none}
.apt-media{position:relative;display:block;width:100%;aspect-ratio:3/2;padding:0;border:0;margin:0;background:#DCE3DF;cursor:pointer;overflow:hidden}
.csl .apt-img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;transition:opacity .35s ease,scale .6s ease}
.apt-back{opacity:0}
.apt.show-back .apt-back{opacity:1}
.apt:hover .apt-img{scale:1.04}
.apt-badge{position:absolute;left:12px;top:12px;background:rgba(255,255,255,.92);color:#0E2B25;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:5px 10px;border-radius:999px}
.apt-dots{position:absolute;left:50%;bottom:10px;translate:-50% 0;display:flex;gap:6px}
.apt-dots i{width:7px;height:7px;border-radius:999px;background:rgba(255,255,255,.95)}
.apt-dots i+i,.apt.show-back .apt-dots i:first-child{background:rgba(255,255,255,.45)}
.apt.show-back .apt-dots i+i{background:rgba(255,255,255,.95)}
.apt-body{padding:16px 18px 18px;display:flex;flex-direction:column;gap:6px;flex-grow:1}
.apt-area{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#7A5C12}
.apt-name{margin:0;font-family:'Bricolage Grotesque',sans-serif;font-size:20px;font-weight:600;line-height:1.2;color:#0E2B25}
.apt-wa{margin-top:auto;align-self:flex-start;display:inline-flex;gap:8px;align-items:center;min-height:44px;padding:0 16px;border-radius:999px;background:#E7F4EC;color:#14532D!important;font-weight:700;font-size:15px;text-decoration:none}
.apt-wa:hover{background:#15803D;color:#FFFFFF!important}
.apt-chip{min-height:44px;padding:0 16px;border-radius:999px;border:1.5px solid #B8C6C0;background:#FFFFFF;color:#10201C;font:inherit;font-size:15px;font-weight:500;cursor:pointer}
.apt-chip span{color:#4A5B56;font-size:13px;margin-left:2px}
.apt-chip.on{background:#0E2B25;border-color:#0E2B25;color:#FFFFFF;font-weight:700}
.apt-chip.on span{color:#C9D5D0}
@media (max-width:1100px){.apt-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:800px){.apt-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}}
@media (max-width:520px){.apt-grid{grid-template-columns:repeat(1,minmax(0,1fr))}}
@media (max-width:600px){.wa__btn_popup{display:none!important}}
.apt-name a{color:inherit;text-decoration:none}.apt-name a:hover{text-decoration:underline}
.apt-actions{margin-top:auto;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.apt-actions .apt-wa{margin-top:0}
.apt-more{font-size:15px;font-weight:700;color:#0E2B25;text-decoration:none;min-height:44px;display:inline-flex;align-items:center}
.apt-more:hover{text-decoration:underline}
