:root{color-scheme:light;--ink:#202420;--paper:#faf8f3;--cream:#eee9df;--gold:#dcb98d;--muted:#565a53;font-family:"Instrument Sans",system-ui,sans-serif;color:var(--ink);background:var(--paper)}
*{box-sizing:border-box}body{margin:0}img{display:block;width:100%}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #af7846;outline-offset:4px}html{scroll-behavior:smooth}.wrap{width:min(100% - 48px,1160px);margin:auto}.bar,footer{background:white}.nav{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:20px}.logo{width:clamp(148px,24vw,238px)}nav{display:flex;flex-wrap:wrap;gap:clamp(12px,3vw,40px);font-size:.92rem;font-weight:650}nav a:hover,address a:hover{text-decoration:underline}.hero{min-height:650px;position:relative;display:grid;align-items:end;isolation:isolate;color:#fff}.hero-image,.hero:after{position:absolute;inset:0;height:100%;z-index:-1}.hero-image{object-fit:cover;object-position:center}.hero:after{content:"";background:linear-gradient(90deg,#151c17e8,#151c1750 74%),linear-gradient(0deg,#151c1788,transparent 75%);z-index:-1}.hero-content{padding-block:100px 82px}.eyebrow{font-size:.78rem;text-transform:uppercase;letter-spacing:.17em;font-weight:750;margin:0 0 16px;color:#765437}.hero .eyebrow,.contact .eyebrow{color:var(--gold)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:"Instrument Serif",Georgia,serif;font-weight:400;line-height:1.04;letter-spacing:-.035em}h1{font-size:clamp(2.8rem,7.4vw,6rem);max-width:810px;margin-bottom:22px}h2{font-size:clamp(2.25rem,5vw,4.2rem);max-width:820px;margin-bottom:20px}h3{font-size:1.32rem;margin-bottom:9px}p{line-height:1.6}.hero p:not(.eyebrow){max-width:460px;font-size:1.15rem}.button{display:inline-flex;align-items:center;gap:22px;padding:14px 21px;margin-top:10px;background:var(--gold);color:var(--ink);font-weight:700}.button:hover{background:#f0d5af}.section{padding-block:clamp(55px,8vw,105px)}.services,.plans,.contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.services{margin-top:34px}.services article{border:1px solid #ded7cb;padding:clamp(22px,4vw,42px)}.services p,.intro{color:var(--muted);margin-bottom:0}.services svg{width:44px;fill:none;stroke:#765437;stroke-width:1.6;stroke-linejoin:round;margin-bottom:20px}.project{background:var(--cream)}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:32px}.gallery a,.plans a{background:white;display:block}.gallery a:hover span,.plans a:hover span{text-decoration:underline}.gallery img,.plans img{aspect-ratio:16/10;object-fit:cover}.plans img{object-fit:contain}.gallery span,.plans span{display:block;padding:13px 15px;font-weight:650}.subheading{margin-top:42px}.contact{background:#252c26;color:white}.contact-grid{align-items:center;gap:clamp(20px,7vw,100px)}.contact p:not(.eyebrow){max-width:480px;color:#e0e2dc;margin-bottom:0}address{font-style:normal}address a{display:flex;justify-content:space-between;gap:8px;border-bottom:1px solid #ffffff40;padding:15px 0;overflow-wrap:anywhere}footer span{color:var(--muted);font-size:.85rem}
@media(max-width:680px){.wrap{width:calc(100% - 32px)}.bar .nav{flex-direction:column;align-items:flex-start;gap:10px;padding-block:15px}nav{gap:25px}.hero{min-height:510px}.hero-content{padding-block:70px 45px}.services,.contact-grid{grid-template-columns:1fr}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.plans{gap:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.nav nav{margin-left:auto}.language{border:1px solid #ded7cb;padding:8px 10px;font-weight:700;font-size:.84rem}.about{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(24px,6vw,72px)}.about-images{display:grid;grid-template-columns:1fr 1fr;gap:10px}.about-images img{height:clamp(160px,25vw,310px);object-fit:cover}.whatsapp{position:fixed;z-index:4;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));display:flex;align-items:center;gap:8px;background:#086548;color:#fff;padding:12px 16px;border-radius:100px;font-weight:700;box-shadow:0 4px 22px #0003}.whatsapp:hover{background:#07513b}.whatsapp svg{width:25px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}footer{padding-bottom:66px}
@media(max-width:680px){.bar .nav{display:grid;grid-template-columns:1fr auto;align-items:center}.nav nav{grid-row:2;grid-column:1/-1;margin-left:0}.language{grid-column:2;grid-row:1}.about{grid-template-columns:1fr}.whatsapp{padding:10px 13px}}
.office-map{margin-top:42px}.office-map iframe{display:block;width:100%;height:clamp(240px,40vw,360px);border:0;background:#eee9df;margin:16px 0}.office-map a{text-decoration:underline;text-underline-offset:4px}
.hero-image{opacity:0;transition:opacity .8s ease}.hero-image.is-current,.hero-image:first-child:not(:has(~ .is-current)){opacity:1}.hero-content{padding-bottom:20px}.hero-controls{display:flex;gap:8px;align-self:start;padding-bottom:28px}.hero-controls[hidden]{display:none}.hero-controls button{min-height:44px;min-width:44px;padding:0 12px;border:1px solid #ffffff88;color:#fff;background:#202420c9;font:inherit;cursor:pointer}.hero-controls button:hover{background:#202420}.hero-controls button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.hero:after{pointer-events:none}
@media(prefers-reduced-motion:reduce){.hero-image{transition:none}}
.project-feature{padding-top:0}.feature-card{position:relative;display:grid;align-items:end;min-height:clamp(290px,46vw,540px);overflow:hidden;isolation:isolate;color:white;background:#252c26}.feature-card img,.feature-card::after{position:absolute;inset:0;width:100%;height:100%;z-index:-1}.feature-card img{object-fit:cover}.feature-card::after{content:"";background:linear-gradient(0deg,#131a15e8,transparent 77%)}.feature-copy{padding:clamp(22px,5vw,56px)}.project-feature > h2{font-family:inherit;line-height:1.4}.feature-copy h3{font:400 clamp(2.25rem,5vw,4.2rem)/1.04 "Instrument Serif",Georgia,serif;letter-spacing:-.035em;margin-bottom:12px}.feature-copy>span{font-weight:700;text-underline-offset:4px}.feature-card:hover .feature-copy>span{text-decoration:underline}
.hero .hero-slogan:not(.eyebrow){font-size:clamp(1.3rem,3vw,1.85rem);font-weight:650;line-height:1.2;max-width:650px;margin-bottom:12px}
@media(min-width:681px){.apartment-plans{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:680px){.apartment-plans{grid-template-columns:1fr}}
.hero-brand{position:absolute;top:28px;left:max(24px,calc((100% - 1160px)/2));width:clamp(164px,23vw,260px);padding:15px 17px;border-left:3px solid var(--gold);background:#fff;box-shadow:0 8px 26px #171a1833}.hero-brand img{height:auto}.hero-content{padding-top:118px}
@media(max-width:680px){.hero-brand{top:18px;left:16px;padding:11px 12px}.hero-content{padding-top:88px}}
.hero-brand{background:none;border:0;box-shadow:none;padding:0}.hero-brand img{filter:brightness(0) invert(1) drop-shadow(0 1px 3px #0009)}
.photo-dialog{max-width:94vw;max-height:94dvh;border:0;padding:12px;background:#fff}.photo-dialog::backdrop{background:#000c}.photo-dialog form{display:flex;justify-content:flex-end;margin-bottom:8px}.photo-dialog button{font:inherit;min-height:44px;padding:0 14px;cursor:pointer}.photo-dialog img{width:auto;max-width:100%;max-height:calc(94dvh - 76px);object-fit:contain}
