@font-face{font-family:Cormorant;src:url('/assets/fonts/cormorant-garamond-latin.woff2') format('woff2');font-weight:300 700;font-display:swap}
@font-face{font-family:Manrope;src:url('/assets/fonts/manrope-latin.woff2') format('woff2');font-weight:200 800;font-display:swap}
:root{--paper:#f5f3ed;--ink:#292923;--muted:#6e6b62;--bronze:#a48c63;--line:#d7d1c5;--serif:Cormorant,Georgia,serif;--sans:Manrope,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:75px}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.8 var(--sans)}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:none;border:0}img{display:block;width:100%;height:auto}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--bronze);outline-offset:7px}.skip-link{position:fixed;left:20px;top:-100px;z-index:100;background:var(--paper);padding:12px 20px}.skip-link:focus{top:14px}
.r-kicker{font-family:var(--sans);font-size:10px;font-weight:400;letter-spacing:2.2px;line-height:1.7;text-transform:uppercase;color:var(--muted)}
.r-hero{position:relative;height:100svh;min-height:620px;color:white;isolation:isolate;overflow:hidden;background:#403e35}
.r-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 55%;z-index:-3}
.r-hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,#10130d36,transparent 26%,#10130d20 58%,#10130d64);z-index:-2}
.r-hero h1{position:absolute;left:5%;right:5%;top:48%;transform:translateY(-50%);text-align:center;font-size:clamp(44px,4.5vw,66px);font-weight:400;line-height:1.05;letter-spacing:.055em;text-transform:uppercase;text-shadow:0 1px 24px #19190e66}
.r-hero-label,.r-hero-full{position:absolute;bottom:33px;font-family:var(--sans);font-size:9px;line-height:1.6;letter-spacing:1.5px;text-transform:uppercase}
.r-hero-label{left:4%}.r-hero-full{right:4%;display:flex;gap:18px;align-items:center}.r-hero-full>span{font-size:18px;line-height:1}.r-hero-full:hover{text-decoration:underline;text-underline-offset:5px}
.r-scroll{position:absolute;left:50%;bottom:30px;transform:translateX(-50%);display:grid;place-items:center;width:49px;height:49px;border:1px solid #ffffff9c;border-radius:50%;font-family:var(--sans);font-size:23px;font-weight:200;line-height:1;transition:background .2s}.r-scroll:hover{background:#ffffff26}
.r-residence-intro{padding:115px 6% 76px}
.r-editorial{max-width:775px;margin:0 auto;text-align:center}.r-editorial h2{font-size:clamp(34px,3.7vw,52px);line-height:1.15;letter-spacing:.035em;text-transform:uppercase;margin:24px 0 28px}.r-editorial>p:not(.r-kicker){max-width:715px;margin:0 auto;font-size:14px;line-height:1.95;color:#66635b}.r-editorial>p+p:not(.r-kicker){margin-top:18px}
.r-specification{max-width:1110px;margin:70px auto 0}.r-specs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:35px 0}.r-specs>div{text-align:center;padding:0 20px}.r-specs>div+div{border-left:1px solid var(--line)}.r-specs dt{font:10px/1.5 var(--sans);letter-spacing:1.4px;text-transform:uppercase;color:var(--muted)}.r-specs dd{font-family:var(--serif);font-size:57px;font-weight:400;line-height:1;margin:18px 0 0}.r-specs dd small{display:block;margin-top:9px;font:9px/1.4 var(--sans);letter-spacing:1.1px;text-transform:uppercase}.r-specs-note{display:flex;justify-content:space-between;gap:24px;margin:20px 0 0;color:var(--muted);font-size:10px;line-height:1.8}.r-specs-note>span:first-child{white-space:nowrap}
.r-specs-request{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:36px 18%;text-align:center}.r-specs-request h3{font-size:30px;letter-spacing:.05em;text-transform:uppercase;line-height:1.2;margin-bottom:18px}.r-specs-request p{font-size:13px;color:var(--muted);line-height:1.9}.r-specs-request .r-text-link{margin-top:24px}
.r-interior{padding-top:44px}.r-interior .r-editorial{padding:0 6% 56px;max-width:875px}.r-interior figure{margin:0}.r-interior-image{display:block;position:relative}.r-interior-image img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}.r-image-open{position:absolute;right:35px;bottom:29px;color:white;background:#29292380;padding:9px 15px;font-size:10px;letter-spacing:1.3px;text-transform:uppercase}.r-interior figcaption{display:flex;justify-content:space-between;gap:24px;padding:19px 4%;font-size:9px;letter-spacing:1.4px;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line)}
.r-details{max-width:1110px;width:88%;display:grid;grid-template-columns:.88fr 1.12fr;gap:110px;padding:85px 0 110px;margin:0 auto}.r-details-intro{padding-top:25px}.r-details-intro h2{font-size:44px;text-transform:uppercase;letter-spacing:.045em;line-height:1.15;margin:25px 0 28px}.r-details-intro>p:not(.r-kicker){font-size:13px;color:var(--muted);line-height:1.9;max-width:340px}.r-detail-list{border-top:1px solid var(--line)}.r-detail-list details{border-bottom:1px solid var(--line)}.r-detail-list summary{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:21px 0;list-style:none;cursor:pointer}.r-detail-list summary::-webkit-details-marker{display:none}.r-detail-list summary h3{font-size:25px;line-height:1.25;text-transform:uppercase;letter-spacing:.055em}.r-detail-list summary>span{font:23px/1 var(--sans);font-weight:200;color:var(--bronze);transition:transform .2s}.r-detail-list details[open] summary>span{transform:rotate(45deg)}.r-detail-list ul{list-style:none;margin:0;padding:0 30px 24px 0}.r-detail-list li{font-size:13px;line-height:1.8;color:var(--muted);margin:9px 0}.r-detail-note{font-size:10px;line-height:1.85;color:var(--muted);margin-top:23px}
.r-inquiry{padding:90px 6% 95px;text-align:center;border-top:1px solid var(--line);background:#efede6}.r-inquiry h2{font-size:clamp(38px,4vw,56px);letter-spacing:.04em;line-height:1.1;text-transform:uppercase;margin:25px 0}.r-inquiry>p:not(.r-kicker){font-size:13px;line-height:1.9;color:var(--muted);max-width:480px;margin:0 auto 28px}.r-text-link{display:inline-flex;align-items:center;gap:30px;font-size:10px;letter-spacing:1.5px;line-height:1.6;text-transform:uppercase;padding:10px 0 8px;border-bottom:1px solid var(--bronze)}.r-text-link>span{font-size:20px;line-height:1;letter-spacing:0}.r-text-link:hover{color:#8d7550}.r-phone{display:block;width:max-content;margin:25px auto 0;font-size:12px;letter-spacing:1px;color:var(--muted)}
.r-continuations-heading{text-align:center;padding:81px 6% 48px}.r-continuations-heading h2{font-size:35px;line-height:1.15;letter-spacing:.045em;text-transform:uppercase;margin-top:18px}.r-residence-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0}.r-residence-tile{position:relative;height:65svh;min-height:430px;max-height:780px;isolation:isolate;overflow:hidden;color:white}.r-residence-tile:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#1e21195c,#1e21191a 75%)}.r-residence-tile>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}.r-tile-copy{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px}.r-tile-copy>p{font-size:9px;letter-spacing:2px;text-transform:uppercase;margin-bottom:16px}.r-tile-copy h3{font-size:43px;line-height:1.1;letter-spacing:.05em;text-transform:uppercase;text-shadow:0 1px 16px #1b1e1966}.r-tile-arrow{display:grid;place-items:center;width:46px;height:46px;margin-top:29px;border:1px solid #ffffff9c;border-radius:50%;font-size:21px;line-height:1;transition:background .2s}.r-residence-tile:hover .r-tile-arrow{background:#ffffff26}
.r-footer{padding:78px 6% 25px;text-align:center;background:var(--paper)}.r-footer-signature{width:250px;max-width:65%;height:auto;margin:0 auto 34px}.r-footer nav{display:flex;justify-content:center;gap:35px;flex-wrap:wrap;font-size:10px;line-height:1.6;letter-spacing:1.4px;text-transform:uppercase}.r-footer nav a{padding:6px 0}.r-footer nav a:hover{text-decoration:underline;text-underline-offset:5px}.r-footer-credit{font-size:10px;color:var(--muted);margin-top:33px}.r-footer-note{font-size:9px;color:var(--muted);line-height:1.8;margin-top:10px}.r-footer-bottom{display:flex;justify-content:center;gap:30px;flex-wrap:wrap;font-size:9px;line-height:1.8;letter-spacing:.3px;color:var(--muted);margin-top:41px;padding-top:23px;border-top:1px solid var(--line)}.r-footer-bottom a{text-decoration:underline;text-underline-offset:3px}
.lightbox{position:fixed;inset:0;margin:0;width:100vw;height:100dvh;max-width:none;max-height:none;padding:0;border:0;background:#25251f;color:var(--paper);overflow:hidden}.lightbox::backdrop{background:#25251f}.lightbox-inner{height:100%;display:flex;flex-direction:column;padding:25px 32px}.lightbox-top{display:flex;align-items:center;justify-content:space-between;gap:30px;flex-shrink:0;margin-bottom:20px}.lightbox-top>p{font-size:10px;letter-spacing:1.5px}.lightbox-close{color:var(--paper);display:flex;gap:15px;align-items:center;padding:5px 0;font-size:11px}.lightbox-close>span{font-size:31px;line-height:1}.lightbox-viewport{flex:1;min-height:0}.lightbox-viewport>img{width:100%;height:100%;object-fit:contain}.lightbox-footer{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-top:22px;flex-shrink:0}.lightbox-caption{font-size:12px}.lightbox-caption small{display:block;font-size:10px;color:#c3bdad;margin-top:5px}.lightbox-controls{display:flex;align-items:center;gap:20px}.lightbox-controls button{width:45px;height:45px;color:var(--paper);border:1px solid #77715e;font-size:21px;border-radius:50%}.lightbox-controls button:hover{background:#ffffff18}.lightbox-count{font-size:10px;letter-spacing:1px;min-width:55px;text-align:center}body.gallery-open{overflow:hidden}.noscript-note{padding:22px 6%;font-size:12px;border-top:1px solid var(--line)}.noscript-note a{text-decoration:underline}
@media(max-width:1050px){.r-details{gap:65px}.r-specs dd{font-size:49px}.r-residence-tile{height:56svh;min-height:370px}.r-tile-copy h3{font-size:37px}}
@media(max-width:700px){
 html{scroll-padding-top:70px}.r-hero{min-height:590px;height:100svh}.r-hero-image{object-position:50% center}.r-hero h1{font-size:46px;letter-spacing:.035em;top:46%}.r-hero-label{bottom:27px;left:6%;max-width:110px;font-size:8px;letter-spacing:1px;line-height:1.8}.r-hero-full{right:6%;bottom:28px;gap:9px;font-size:8px;letter-spacing:1px}.r-scroll{width:44px;height:44px;bottom:24px;font-size:21px}
 .r-residence-intro{padding:75px 7% 42px}.r-kicker{font-size:9px;letter-spacing:1.6px}.r-editorial h2{font-size:35px;line-height:1.12;letter-spacing:.025em;margin:24px 0}.r-editorial>p:not(.r-kicker){font-size:13px;line-height:1.95}.r-specification{margin-top:43px}.r-specs{grid-template-columns:repeat(2,minmax(0,1fr));padding:0}.r-specs>div{padding:25px 12px}.r-specs>div:nth-child(odd){border-left:0}.r-specs>div:nth-child(n+3){border-top:1px solid var(--line)}.r-specs dt{font-size:9px;letter-spacing:1px}.r-specs dd{font-size:46px;margin-top:14px}.r-specs dd small{font-size:9px}.r-specs-note{display:block;font-size:10px;margin-top:17px;line-height:1.85}.r-specs-note span{display:block}.r-specs-note>span+span{margin-top:6px}.r-specs-request{padding:27px 0}.r-specs-request h3{font-size:28px}.r-specs-request p{font-size:13px}
 .r-interior{padding-top:30px}.r-interior .r-editorial{padding:0 7% 39px}.r-interior-image img{aspect-ratio:1.12;object-position:52% center}.r-image-open{right:20px;bottom:20px;font-size:9px;padding:8px 11px}.r-interior figcaption{padding:16px 7%;font-size:8px;letter-spacing:.7px;gap:10px;flex-wrap:wrap}
 .r-details{width:86%;grid-template-columns:1fr;gap:31px;padding:38px 0 63px}.r-details-intro{padding:0}.r-details-intro h2{font-size:35px;margin:21px 0;line-height:1.12}.r-details-intro>p:not(.r-kicker){font-size:13px;max-width:none}.r-detail-list summary{padding:19px 0}.r-detail-list summary h3{font-size:23px;letter-spacing:.035em}.r-detail-list li{font-size:13px}.r-detail-note{font-size:10px;margin-top:19px}
 .r-inquiry{padding:65px 7% 67px}.r-inquiry h2{font-size:36px;letter-spacing:.025em;margin:23px 0}.r-inquiry>p:not(.r-kicker){font-size:13px}.r-text-link{font-size:10px;letter-spacing:1px;gap:22px}.r-phone{font-size:12px;margin-top:23px}
 .r-continuations-heading{padding:60px 7% 34px}.r-continuations-heading h2{font-size:30px;letter-spacing:.025em;margin-top:18px}.r-residence-tiles{grid-template-columns:1fr}.r-residence-tile{height:68svh;min-height:430px;max-height:660px}.r-tile-copy h3{font-size:39px}.r-tile-copy>p{font-size:9px;letter-spacing:1.5px}.r-tile-arrow{width:43px;height:43px;margin-top:25px}
 .r-footer{padding:59px 7% 25px}.r-footer-signature{width:215px;max-width:90%;margin-bottom:28px}.r-footer nav{gap:16px 24px;font-size:9px;letter-spacing:1px}.r-footer-credit{font-size:10px;margin-top:27px}.r-footer-note{font-size:9px;max-width:330px;margin:12px auto 0}.r-footer-bottom{gap:12px 20px;margin-top:29px;padding-top:21px;font-size:9px}
 .lightbox-inner{padding:20px 16px}.lightbox-top{gap:18px}.lightbox-top>p{font-size:9px;letter-spacing:1px}.lightbox-close{font-size:10px;gap:10px}.lightbox-footer{display:block;padding-top:20px}.lightbox-caption{font-size:12px}.lightbox-caption small{font-size:10px}.lightbox-controls{justify-content:space-between;margin-top:21px}.lightbox-controls button{width:43px;height:43px}.lightbox-count{font-size:10px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

@media(max-width:700px){.residence-page[data-residence="three"] .r-hero-image{object-position:32% center}}

/* Habitat Creators remains subordinate to the Villa Bello identity. */
.r-footer-credit{display:flex;flex-direction:column;align-items:center;margin:36px auto 0}.r-developer-label{font:400 8px/1.5 Manrope,Arial,sans-serif;letter-spacing:1.6px;text-transform:uppercase}.r-developer-logo{width:126px;max-width:60%;height:auto;margin-top:14px;filter:brightness(0);opacity:.82}.r-developer-person{font:400 16px/1.5 Cormorant,Georgia,serif;margin-top:11px;color:var(--muted)}.r-footer-credit+.r-footer-note{margin-top:25px}
@media(max-width:700px){.r-footer-credit{margin-top:31px}.r-developer-logo{width:122px}.r-developer-person{font-size:16px}}
