@font-face{font-family:'Cinzel';font-style:normal;font-weight:400 600;font-display:swap;src:url('/assets/site/fonts/cinzel-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Cinzel';font-style:normal;font-weight:400 600;font-display:swap;src:url('/assets/site/fonts/cinzel-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:300 600;font-display:swap;src:url('/assets/site/fonts/source-sans-3-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:300 600;font-display:swap;src:url('/assets/site/fonts/source-sans-3-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--ink:#36372f;--muted:#64615d;--paper:#fff;--sand:#eeebe5;--gold:#c9ac8b;--line:#d7d3cc;--wrap:min(1220px,calc(100% - 40px));--display:'Cinzel',Georgia,serif;--body:'Source Sans 3','Helvetica Neue',Arial,sans-serif;--mono:var(--body);--type-body-size:clamp(1rem,.97rem + .12vw,1.0625rem)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:var(--type-body-size);font-weight:400;line-height:1.6}body.menu-open{overflow:hidden}img,video{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}h1,h2,h3,.stats strong,.group-company-names strong,.group-journey-list span{font-family:var(--display);font-weight:400;text-wrap:balance}.wrap{width:var(--wrap);margin-inline:auto}.section{padding-block:110px}.skip-link{position:fixed;top:8px;left:8px;z-index:1200;transform:translateY(-150%);background:#fff;padding:12px}.skip-link:focus{transform:none}.eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 22px;font-family:var(--body);font-size:.71875rem;font-weight:500;line-height:1.4;letter-spacing:.18em;text-transform:uppercase}.eyebrow::before{content:'';width:8px;height:8px;background:currentColor}.eyebrow.light{color:#fff}.button{min-height:62px;display:inline-flex;align-items:center;justify-content:center;padding:16px 32px;border:1px solid transparent;font-family:var(--body);font-size:.75rem;font-weight:600;line-height:1.35;letter-spacing:.15em;text-transform:uppercase;text-align:center;transition:background .25s,color .25s,border-color .25s}.button-gold{background:var(--gold);color:#111}.button-gold:hover{background:#fff}.button-outline{border-color:var(--ink)}.button-outline:hover,.button-dark{background:#0d0d0c;color:#fff}.button-dark:hover{background:var(--gold);color:#111}.button-outline-light{border-color:#fff;color:#fff}.button-outline-light:hover{background:#fff;color:#111}.text-link{display:inline-block;margin-top:26px;border-bottom:1px solid;padding-bottom:5px;font-family:var(--body);font-size:.75rem;font-weight:600;line-height:1.35;letter-spacing:.15em;text-transform:uppercase}
.header{position:fixed;inset:0 0 auto;z-index:100;height:92px;color:#fff;transition:background .3s,height .3s,box-shadow .3s}.header.scrolled{height:76px;background:rgba(8,8,8,.95);box-shadow:0 1px 0 rgba(255,255,255,.12)}.header-inner{height:100%;max-width:1440px;margin:auto;padding:0 22px;display:grid;grid-template-columns:180px 1fr auto;align-items:center;gap:40px}.brand img{width:145px;height:auto;filter:brightness(0) invert(1)}#navigation{display:flex;justify-content:center;gap:36px;font-size:.96rem}#navigation a{position:relative;padding-block:10px}#navigation a::after{content:'';position:absolute;left:0;right:100%;bottom:5px;height:1px;background:#fff;transition:right .25s}#navigation a:hover::after{right:0}.header-phone{min-width:200px;border:1px solid rgba(255,255,255,.75);padding:15px 20px;text-align:center;font:400 .85rem var(--mono)}.menu-toggle{display:none;border:0;background:transparent;color:#fff;padding:10px;font:400 .9rem var(--mono);text-transform:uppercase}
.hero{position:relative;min-height:105vh;display:flex;align-items:center;overflow:hidden;background:#1a1e20}.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,14,17,.82) 0%,rgba(9,14,17,.64) 52%,rgba(9,14,17,.48) 100%)}.hero-content{position:relative;z-index:1;color:#fff;padding-top:110px}.hero h1{max-width:930px;margin:0;font-size:clamp(3.1rem,6.1vw,6rem);font-weight:400;line-height:1.02;letter-spacing:-.045em}.hero-place{margin:24px 0 10px;font-size:clamp(1.7rem,3.1vw,2.85rem);color:rgba(255,255,255,.74)}.hero-copy{max-width:760px;font-size:1rem}.hero-actions{display:flex;gap:18px;margin-top:34px}.hero-scroll{position:absolute;right:32px;bottom:28px;color:#fff;font:400 .78rem var(--mono);text-transform:uppercase;writing-mode:vertical-rl;display:flex;gap:10px;align-items:center}
.about{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.65fr);gap:70px;align-items:start}.about-copy{padding-top:30px}.about h2,.section-heading h2,.areas h2,.international h2,.contact h2{margin:0;font-size:clamp(2.5rem,4.6vw,5rem);line-height:1.04;font-weight:400;letter-spacing:-.04em}.about-copy>p:not(.eyebrow){max-width:720px;color:var(--muted);font-size:1.1rem}.about-image{margin:0}.about-image img{width:100%;aspect-ratio:3/4;object-fit:cover;object-position:center}.stats{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.stats div{display:flex;flex-direction:column;padding:34px 24px}.stats div+div{border-left:1px solid var(--line)}.stats strong{font-size:clamp(3rem,5vw,5.2rem);line-height:1;font-weight:500}.stats span{margin-top:12px;font:400 .82rem var(--mono);text-transform:uppercase}
.services{background:var(--sand)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:55px}.section-heading>div{max-width:900px}.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}.service-card{display:grid;grid-template-columns:44% 1fr;background:#fff;min-height:300px;overflow:hidden}.service-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.service-card:hover img{transform:scale(1.035)}.service-card>div{padding:30px;display:flex;flex-direction:column}.service-card span,.why-grid span,.project-card span{font:400 .75rem var(--mono);color:#827d77}.service-card h3{margin:18px 0 14px;font-size:1.45rem;line-height:1.15;font-weight:500}.service-card p{margin:auto 0 0;color:var(--muted);font-size:.93rem}
.consultation{padding:0;min-height:620px;display:grid;grid-template-columns:1fr 1fr;background:#10100f;color:#fff}.consultation-image{background:url('/assets/site/2148479513.webp') center/cover no-repeat;min-height:480px}.consultation-content{padding:clamp(60px,8vw,120px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.consultation h2{font-size:clamp(2.7rem,4.7vw,5.1rem);line-height:1.03;font-weight:400;margin:0}.consultation p:not(.eyebrow){max-width:620px;color:#bbb;margin:28px 0 34px}
.why-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.why-grid article{min-height:270px;padding:34px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.why-grid h3{font-size:1.55rem;line-height:1.2;font-weight:500;margin:28px 0 12px}.why-grid p{color:var(--muted);max-width:520px}
.areas{display:grid;grid-template-columns:1fr 1fr;padding:0;background:var(--sand)}.areas-copy{padding:clamp(60px,7vw,110px)}.areas-copy>p:not(.eyebrow){color:var(--muted);max-width:660px}.area-list{list-style:none;padding:28px 0;margin:24px 0 34px;border-top:1px solid #ccc5bb;display:grid;grid-template-columns:1fr 1fr;counter-reset:area}.area-list li{counter-increment:area;padding:8px 0}.area-list li::before{content:counter(area,decimal-leading-zero) '. ';font-family:var(--mono);font-size:.75rem}.areas-map{margin:0;min-height:680px;background:#f5f3ef}.areas-map img{width:100%;height:100%;object-fit:contain}
.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.project-card{border:1px solid var(--line)}.project-card figure{margin:0;overflow:hidden;aspect-ratio:4/3}.project-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.project-card:hover img{transform:scale(1.04)}.project-card>div{padding:26px}.project-card h3{font-size:1.7rem;font-weight:500;margin:14px 0 8px}.project-card p{color:var(--muted)}
.project-card-link>a{display:block;height:100%}.project-card-link>a>div{padding:26px}.project-card-link strong{display:inline-flex;gap:8px;margin-top:16px;border-bottom:1px solid;font:400 .78rem var(--mono);text-transform:uppercase}
.project-detail-page .header{background:rgba(8,8,8,.92)}.project-hero{position:relative;min-height:92svh;display:flex;align-items:flex-end;overflow:hidden;background:#181818;color:#fff}.project-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.project-hero::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.18) 18%,rgba(0,0,0,.76) 100%)}.project-hero-content{position:relative;z-index:1;padding-top:180px;padding-bottom:clamp(56px,8vw,110px)}.project-back{display:inline-block;margin-bottom:54px;border-bottom:1px solid rgba(255,255,255,.65);font:400 .78rem var(--mono);text-transform:uppercase}.project-hero h1{max-width:980px;margin:0;font-size:clamp(4rem,9vw,8.8rem);font-weight:400;line-height:.92;letter-spacing:-.055em}.project-hero-lead{max-width:760px;margin:28px 0 0;color:rgba(255,255,255,.84);font-size:clamp(1.05rem,1.8vw,1.35rem)}.project-summary{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:clamp(50px,8vw,120px);align-items:start}.project-story h2,.project-gallery-heading h2,.project-cta h2{margin:0;font-size:clamp(2.6rem,5vw,5.3rem);font-weight:400;line-height:1.03;letter-spacing:-.045em}.project-story>p:not(.eyebrow){max-width:760px;color:var(--muted);font-size:1.08rem}.project-meta{margin:0;border-top:1px solid var(--line)}.project-meta div{display:grid;grid-template-columns:115px 1fr;gap:20px;padding:19px 0;border-bottom:1px solid var(--line)}.project-meta dt{font:400 .72rem var(--mono);text-transform:uppercase;color:var(--muted)}.project-meta dd{margin:0}.project-feature{margin-top:80px;display:grid;grid-template-columns:1.15fr .85fr;gap:18px}.project-feature img{width:100%;height:100%;min-height:440px;object-fit:cover}.project-feature img:last-child{object-position:center}.project-gallery-section{background:var(--sand)}.project-gallery-heading{display:grid;grid-template-columns:1fr minmax(260px,.55fr);gap:50px;align-items:end;margin-bottom:48px}.project-gallery-heading p:last-child{margin:0;color:var(--muted)}.project-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.project-gallery-item{position:relative;display:block;width:100%;padding:0;border:0;background:#d8d3cb;overflow:hidden;aspect-ratio:4/3}.project-gallery-item:nth-child(11n+1){grid-column:span 2;aspect-ratio:2/1}.project-gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s,filter .5s}.project-gallery-item::after{content:'Apri';position:absolute;right:12px;bottom:12px;padding:7px 9px;background:rgba(0,0,0,.72);color:#fff;opacity:0;transform:translateY(5px);transition:opacity .25s,transform .25s;font:400 .68rem var(--mono);text-transform:uppercase}.project-gallery-item:hover img{transform:scale(1.025);filter:brightness(.86)}.project-gallery-item:hover::after,.project-gallery-item:focus-visible::after{opacity:1;transform:none}.project-lightbox{width:100vw;height:100vh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:#090909;color:#fff;overflow:hidden}.project-lightbox::backdrop{background:rgba(0,0,0,.96)}.project-lightbox figure{width:100%;height:100%;margin:0;display:grid;place-items:center;padding:70px 90px}.project-lightbox img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.project-lightbox button{position:fixed;z-index:2;border:1px solid rgba(255,255,255,.45);background:rgba(0,0,0,.45);color:#fff;width:48px;height:48px;border-radius:50%;display:grid;place-items:center}.project-lightbox-close{right:22px;top:20px}.project-lightbox-prev{left:22px;top:50%;transform:translateY(-50%)}.project-lightbox-next{right:22px;top:50%;transform:translateY(-50%)}.project-lightbox-count{position:fixed;left:24px;bottom:22px;font:400 .75rem var(--mono);letter-spacing:.06em}.project-cta{background:#111;color:#fff;text-align:center}.project-cta-inner{max-width:880px}.project-cta p{max-width:650px;margin:28px auto 34px;color:#aaa}.project-cta .button{margin-inline:auto}body.lightbox-open{overflow:hidden}
.process{background:#0b0b0b;color:#fff}.process .section-heading{max-width:970px}.process-list{list-style:none;padding:0;margin:0;border-top:1px solid #3d3d3d}.process-list li{display:grid;grid-template-columns:80px minmax(180px,.7fr) 1fr;gap:40px;align-items:start;padding:30px 0;border-bottom:1px solid #3d3d3d}.process-list span{font:400 .85rem var(--mono);color:var(--gold)}.process-list h3{margin:0;font-size:1.9rem;font-weight:400}.process-list p{margin:0;color:#aaa;max-width:650px}
.international{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;background:var(--sand)}.international-copy{padding:clamp(60px,7vw,110px);display:flex;flex-direction:column;justify-content:center}.international-copy>p:not(.eyebrow){color:var(--muted);max-width:650px}.international-image{position:relative;margin:0;min-height:660px;overflow:hidden}.international-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 62%}
.real-estate{display:grid;grid-template-columns:1fr 1fr;background:#fff}.real-estate-image{margin:0;min-height:690px}.real-estate-image img{width:100%;height:100%;object-fit:cover}.real-estate-copy{padding:clamp(60px,7vw,110px);display:flex;flex-direction:column;justify-content:center}.real-estate h2{max-width:720px;margin:0;font-size:clamp(2.7rem,4.8vw,5.2rem);line-height:1.03;font-weight:400;letter-spacing:-.045em}.real-estate-copy>p:not(.eyebrow){max-width:650px;margin:28px 0 0;color:var(--muted);font-size:1.08rem}.real-estate-services{display:flex;flex-wrap:wrap;gap:10px 24px;list-style:none;padding:25px 0;margin:28px 0 32px;border-block:1px solid var(--line);font:400 .78rem var(--mono);text-transform:uppercase}.real-estate-actions{display:flex;flex-wrap:wrap;gap:12px}.real-estate-group-link{margin-top:26px;align-self:flex-start}
.group-page .header{background:rgba(8,8,8,.96);box-shadow:0 1px 0 rgba(255,255,255,.12)}.group-page main{padding-top:92px}.group-hero{padding:clamp(72px,8vw,120px) 0 70px;text-align:center}.group-hero-copy{max-width:940px}.group-hero h1{margin:18px auto 0;max-width:920px;font-size:clamp(3rem,6vw,6.2rem);font-weight:400;line-height:1.01;letter-spacing:-.05em}.group-hero .group-intro{max-width:800px;margin:28px auto 0;color:var(--muted);font-size:1.1rem}.group-connection{margin:55px 0 0}.group-tenet{margin:0 0 16px;font:400 .92rem var(--mono);letter-spacing:.08em}.group-connection-image{height:clamp(210px,28vw,430px);overflow:hidden}.group-connection-image img{width:100%;height:100%;object-fit:cover;object-position:center}.group-company-names{max-width:1100px;margin:24px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:30px;padding-inline:20px}.group-company-names strong{display:block;font-size:clamp(1rem,2vw,1.55rem);font-weight:500}.group-company-names span{display:block;margin-top:7px;color:var(--muted);font-size:.9rem}.group-tenet-link{margin-top:32px}.group-companies{display:grid;grid-template-columns:1fr 1fr;border-block:1px solid var(--line)}.group-company{padding:clamp(55px,7vw,100px);display:flex;flex-direction:column;align-items:flex-start}.group-company+.group-company{border-left:1px solid var(--line)}.group-company h2{margin:16px 0 0;font-size:clamp(2.1rem,3.8vw,4rem);font-weight:400;line-height:1.05}.group-company>p:not(.eyebrow){max-width:620px;margin:24px 0 0;color:var(--muted);font-size:1.06rem}.group-services{display:flex;flex-wrap:wrap;gap:10px 22px;list-style:none;padding:0;margin:28px 0 36px;font:400 .78rem var(--mono);text-transform:uppercase}.group-company .text-link{margin-top:auto}.group-journey-heading{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:end}.group-journey-heading h2{margin:0;font-size:clamp(2.7rem,4.8vw,5.2rem);font-weight:400;line-height:1.03;letter-spacing:-.045em}.group-journey-heading>p{margin:0;color:var(--muted);font-size:1.06rem}.group-journey-list{display:grid;grid-template-columns:repeat(3,1fr);gap:42px;list-style:none;padding:0;margin:58px 0 0}.group-journey-list li{border-top:1px solid var(--line);padding-top:24px}.group-journey-list span{font:400 1.5rem var(--mono);color:#8e8982}.group-journey-list h3{margin:25px 0 14px;font-size:1.55rem;font-weight:500}.group-journey-list p{margin:0;color:var(--muted)}.group-closing{padding-top:0}.group-closing-inner{display:grid;grid-template-columns:1fr auto;gap:60px;align-items:center;background:var(--sand);padding:clamp(42px,5vw,72px)}.group-closing h2{margin:0;font-size:clamp(2.2rem,4vw,4.3rem);font-weight:400;line-height:1.04}.group-closing p{max-width:770px;margin:18px 0 0;color:var(--muted)}
.contact{background:#111;color:#fff}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:100px}.contact-intro>p:not(.eyebrow){color:#aaa}.contact address{display:flex;flex-direction:column;gap:8px;margin-top:46px;font-style:normal}.contact address a{font-size:1.1rem}.contact address span{color:#999;margin-bottom:12px}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:24px}.field{display:flex;flex-direction:column;gap:8px}.field:nth-of-type(3),.contact-form fieldset,.contact-form .field:has(textarea),.contact-form button,.form-note,.form-status{grid-column:1/-1}.field label,.contact-form legend{font:400 .72rem var(--mono);text-transform:uppercase;color:#b9b9b9}.field input,.field textarea{border:0;border-bottom:1px solid #656565;background:transparent;color:#fff;border-radius:0;padding:12px 0;outline:none}.field input:focus,.field textarea:focus{border-color:var(--gold)}.contact-form fieldset{border:0;padding:4px 0;margin:0}.project-options{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.project-options input{position:absolute;opacity:0}.project-options span{display:block;border:1px solid #555;padding:12px 18px;font:400 .75rem var(--mono);text-transform:uppercase}.project-options input:checked+span{background:#fff;color:#111;border-color:#fff}.contact-form button{justify-self:start}.form-note,.form-status{margin:0;color:#8d8d8d;font-size:.78rem}.form-status a{text-decoration:underline}
.footer{background:#000;color:#fff;padding:80px 0 24px}.footer-main{display:grid;grid-template-columns:1.15fr .6fr .9fr 1fr;gap:clamp(36px,5vw,74px);padding-bottom:60px}.footer-brand img{width:190px;filter:brightness(0) invert(1)}.footer-brand p{max-width:380px;color:#888}.footer h2{font-size:1rem;font-weight:500;margin:0 0 22px}.footer-main>div,.footer nav{display:flex;flex-direction:column;align-items:flex-start;gap:9px}.footer-main span{color:#858585}.footer-group a,.footer-group>span{font:400 .78rem/1.6 var(--mono);letter-spacing:.02em}.footer-group a{border-bottom:1px solid transparent}.footer-group a:hover{border-color:#fff}.footer-bottom{padding-top:22px;border-top:1px solid #333;display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap;color:#777;font-size:.72rem}.whatsapp{position:fixed;right:24px;bottom:22px;z-index:90;width:58px;height:58px;border-radius:50%;background:#2bdc65;color:#fff;display:grid;place-items:center;border:3px solid #fff;box-shadow:0 8px 24px rgba(0,0,0,.25);font-size:1.3rem}.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:none}
/* Real Estate Advisor typography system */
h1{font-family:var(--display)!important;font-weight:400!important;line-height:1.08!important;letter-spacing:-.025em!important}h2{font-family:var(--display)!important;font-weight:400!important;line-height:1.14!important;letter-spacing:-.018em!important}h3{font-family:var(--display)!important;font-weight:400!important;line-height:1.25!important;letter-spacing:-.012em!important}#navigation{font-family:var(--body);font-size:.75rem;font-weight:500;line-height:1.35;letter-spacing:.1em;text-transform:uppercase}.header-phone,.menu-toggle,.hero-scroll,.project-back,.project-gallery-item::after,.project-lightbox-count,.project-card-link strong,.real-estate-services,.group-services,.footer-group a,.footer-group>span{font-family:var(--body);font-weight:500;letter-spacing:.1em}.service-card span,.why-grid span,.project-card span,.project-meta dt,.field label,.contact-form legend,.project-options span{font-family:var(--body);font-size:.6875rem;font-weight:500;line-height:1.4;letter-spacing:.15em;text-transform:uppercase}.stats strong,.group-company-names strong,.group-journey-list span{font-family:var(--display)!important;font-weight:400!important}.group-tenet{font-family:var(--display);font-weight:400}.footer h2{font-family:var(--body)!important;font-size:.75rem;font-weight:500!important;line-height:1.35!important;letter-spacing:.1em!important;text-transform:uppercase}.footer-bottom{font-family:var(--body);line-height:1.5}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.service-card img,.project-card img{transition:none}}
@media (max-width:1000px){.header-inner{grid-template-columns:160px 1fr auto;gap:18px}#navigation{gap:18px}.header-phone{min-width:auto}.service-card{grid-template-columns:1fr}.service-card img{height:230px}.contact-grid{gap:50px}.footer-main{grid-template-columns:1fr 1fr;gap:52px}}
@media (max-width:780px){:root{--wrap:min(100% - 32px,1220px)}.section{padding-block:78px}.header,.header.scrolled{height:72px;background:rgba(8,8,8,.92)}.header-inner{grid-template-columns:1fr auto;padding-inline:16px}.brand img{width:128px}.menu-toggle{display:block}.header-phone{display:none}#navigation{position:fixed;inset:72px 0 0;display:flex;flex-direction:column;justify-content:flex-start;gap:0;padding:28px;background:#0a0a0a;transform:translateX(100%);transition:transform .3s;overflow-y:auto}#navigation.is-open{transform:none}#navigation a{padding:18px 0;border-bottom:1px solid #333;font-size:1.4rem}.hero{min-height:100svh}.hero-content{padding-top:90px}.hero h1{font-size:clamp(2.7rem,12vw,4.4rem)}.hero-place{font-size:1.5rem}.hero-actions{flex-direction:column;align-items:stretch}.hero-scroll{display:none}.about{grid-template-columns:1fr;gap:34px}.about-image{order:-1}.stats{grid-template-columns:1fr}.stats div+div{border-left:0;border-top:1px solid var(--line)}.section-heading{align-items:flex-start;flex-direction:column}.service-grid{grid-template-columns:1fr}.consultation,.areas,.international,.real-estate{grid-template-columns:1fr}.consultation-image,.areas-map,.international-image,.real-estate-image{min-height:440px}.consultation-content,.areas-copy,.international-copy,.real-estate-copy{padding:64px 20px}.real-estate-actions{flex-direction:column}.why-grid{grid-template-columns:1fr}.project-grid{grid-template-columns:1fr}.process-list li{grid-template-columns:50px 1fr;gap:14px}.process-list p{grid-column:2}.contact-grid{grid-template-columns:1fr}.contact-form{grid-template-columns:1fr}.field,.field:nth-of-type(3),.contact-form fieldset,.contact-form .field:has(textarea),.contact-form button,.form-note,.form-status{grid-column:1}.group-page main{padding-top:72px}.group-hero{padding-top:64px}.group-company-names{gap:12px}.group-company-names strong{font-size:.9rem}.group-company-names span{font-size:.78rem}.group-companies,.group-journey-heading,.group-closing-inner{grid-template-columns:1fr}.group-company+.group-company{border-left:0;border-top:1px solid var(--line)}.group-journey-heading{gap:26px}.group-journey-list{grid-template-columns:1fr;gap:34px}.group-closing-inner{gap:34px}.footer-main{grid-template-columns:1fr;gap:46px}.footer-bottom{flex-direction:column}.whatsapp{width:52px;height:52px;right:15px;bottom:15px}}
@media (max-width:460px){.section{padding-block:64px}.hero-content{padding-bottom:45px}.button{width:100%}.area-list{grid-template-columns:1fr}.consultation h2,.about h2,.section-heading h2,.areas h2,.international h2,.real-estate h2,.contact h2{font-size:2.5rem}.group-hero h1{font-size:2.75rem}.group-connection-image{height:185px}.group-company{padding:55px 20px}.service-card h3{font-size:1.3rem}.stats div{padding-inline:0}}
@media (max-width:900px){.project-summary,.project-gallery-heading{grid-template-columns:1fr}.project-feature{grid-template-columns:1fr}.project-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.project-gallery-item:nth-child(11n+1){grid-column:span 2}.project-hero{min-height:78svh}}
@media (max-width:560px){.project-hero h1{font-size:clamp(3.3rem,18vw,5rem)}.project-back{margin-bottom:36px}.project-gallery{grid-template-columns:1fr;gap:8px}.project-gallery-item,.project-gallery-item:nth-child(11n+1){grid-column:auto;aspect-ratio:4/3}.project-feature{margin-top:52px}.project-feature img{min-height:280px}.project-lightbox figure{padding:72px 10px}.project-lightbox-prev{left:10px}.project-lightbox-next{right:10px}.project-lightbox-close{right:10px;top:10px}}
/* Consistent vertical rhythm */
:root{--section-space:clamp(72px,5vw,96px);--split-space:clamp(56px,4.6vw,88px);--section-heading-gap:clamp(38px,2.7vw,48px);--page-title-size:clamp(3.2rem,5vw,5.35rem);--section-title-size:clamp(2.35rem,3.7vw,4.25rem);--card-title-size:clamp(1.35rem,1.4vw,1.65rem)}
.section{padding-block:var(--section-space)}.consultation.section,.areas.section{padding:0}.section-heading{margin-bottom:var(--section-heading-gap)}.hero{min-height:100svh}.hero-content{padding-top:92px}.about{gap:clamp(42px,3.8vw,64px)}.about-image{height:clamp(560px,36vw,680px);overflow:hidden}.about-image img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover}.about h2,.section-heading h2,.areas h2,.international h2,.real-estate h2,.contact h2,.project-story h2,.project-gallery-heading h2,.project-cta h2,.group-journey-heading h2{font-size:clamp(2.35rem,3.7vw,4.25rem)}.service-card{min-height:280px}.consultation{min-height:560px}.consultation-content,.areas-copy,.international-copy,.real-estate-copy{padding:var(--split-space)}.why-grid article{min-height:240px;padding:30px}.areas-map{min-height:600px}.international-image{min-height:clamp(620px,48vw,760px)}.real-estate-image{min-height:620px}.process-list li{padding:24px 0}.project-hero-content{padding-top:160px;padding-bottom:clamp(52px,6vw,88px)}.project-back{margin-bottom:42px}.project-feature{margin-top:64px}.project-gallery-heading{margin-bottom:40px}.contact-grid{gap:clamp(52px,6vw,86px)}.contact address{margin-top:36px}.group-hero{padding:clamp(66px,5.5vw,88px) 0 56px}.group-hero h1{font-size:clamp(3rem,5vw,5.35rem)}.group-connection{margin-top:42px}.group-connection-image{height:clamp(210px,22vw,360px)}.group-company-names{margin-top:20px}.group-tenet-link{margin-top:26px}.group-company{padding:clamp(50px,5vw,82px)}.group-journey-list{margin-top:46px}.group-closing.section{padding-top:0}.group-closing-inner{padding:clamp(38px,4vw,60px)}.footer{padding-top:64px}.footer-main{padding-bottom:48px}
.hero h1,.group-hero h1,.project-hero h1{font-size:var(--page-title-size)!important}main h2{font-size:var(--section-title-size)!important}.service-card h3,.why-grid h3,.project-card h3,.process-list h3,.group-journey-list h3{font-size:var(--card-title-size)!important}
@media (max-width:780px){:root{--section-space:58px;--split-space:56px 20px;--section-heading-gap:36px;--page-title-size:clamp(2.7rem,12vw,4.4rem);--section-title-size:2.25rem;--card-title-size:1.4rem}.hero-content{padding-top:78px}.about{gap:30px}.about-image{height:min(116vw,620px)}.service-card{min-height:0}.consultation,.areas,.international,.real-estate{grid-template-columns:1fr}.consultation-image,.areas-map,.international-image,.real-estate-image{min-height:360px}.why-grid article{min-height:0;padding:26px 22px}.process-list li{padding:22px 0}.group-hero{padding:54px 0 46px}.group-connection{margin-top:34px}.group-connection-image{height:clamp(190px,45vw,300px)}.group-company{padding:48px 20px}.group-journey-list{margin-top:38px}.group-closing{padding-bottom:var(--section-space)}.group-closing-inner{padding:38px 24px}.project-hero-content{padding-top:130px;padding-bottom:54px}.project-feature{margin-top:50px}.footer{padding-top:56px}.footer-main{padding-bottom:40px}}
@media (max-width:460px){:root{--section-space:50px;--split-space:48px 20px;--section-heading-gap:32px;--page-title-size:2.6rem;--section-title-size:2.15rem;--card-title-size:1.35rem}.group-hero{padding-top:46px}.group-connection-image{height:180px}.group-company{padding-block:44px}.project-feature{margin-top:42px}}

/* Olive graphite palette */
.button-gold,.button-dark:hover,.button-outline-light:hover,.project-options input:checked+span{color:var(--ink)}
.button-outline:hover,.button-dark,.consultation,.project-cta,.process,.contact,.footer{background:var(--ink)}
.header.scrolled{background:rgba(54,55,47,.96)}
.hero{background:var(--ink)}
.hero-shade{background:linear-gradient(90deg,rgba(54,55,47,.86) 0%,rgba(54,55,47,.68) 52%,rgba(54,55,47,.5) 100%)}
.project-detail-page .header,.group-page .header{background:rgba(54,55,47,.96)}
.project-hero{background:var(--ink)}
.project-hero::after{background:linear-gradient(180deg,rgba(54,55,47,.2) 18%,rgba(54,55,47,.82) 100%)}
.project-gallery-item::after{background:rgba(54,55,47,.82)}
.project-lightbox{background:var(--ink)}
.project-lightbox::backdrop{background:rgba(42,43,37,.97)}
.project-lightbox button{background:rgba(54,55,47,.78)}
.process-list,.process-list li,.footer-bottom{border-color:rgba(255,255,255,.18)}
.whatsapp{box-shadow:0 8px 24px rgba(54,55,47,.28)}
@media (max-width:780px){.header,.header.scrolled{background:rgba(54,55,47,.96)}#navigation{background:var(--ink)}#navigation a{border-color:rgba(255,255,255,.18)}}

/* Home editorial feature */
.home-feature{background:var(--sand)}
.home-feature-inner{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:clamp(36px,6vw,88px);align-items:center}
.home-feature-copy{max-width:520px}
.home-feature-copy h2{margin:0;font-size:var(--section-title-size);line-height:1.04}
.home-feature-kicker{margin:18px 0 0;font:400 clamp(1.35rem,2.2vw,2rem)/1.2 var(--display)}
.home-feature-copy>p:not(.eyebrow):not(.home-feature-kicker){margin:22px 0 30px;color:var(--muted);font-size:1.125rem;line-height:1.65}
.home-feature-image{display:block;overflow:hidden;aspect-ratio:16/9;background:#ded9d0}
.home-feature-image img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .6s ease}
.home-feature-image:hover img{transform:scale(1.015)}
@media (max-width:780px){.home-feature-inner{grid-template-columns:1fr;gap:28px}.home-feature-image{order:-1}.home-feature-copy>p:not(.eyebrow):not(.home-feature-kicker){font-size:1rem}.home-feature-image:hover img{transform:none}}

/* Editorial portfolio */
.portfolio-page .header{background:rgba(54,55,47,.96)}
.portfolio-page main{padding-top:76px}
.portfolio-hero{padding:clamp(86px,10vw,150px) 0 clamp(78px,9vw,130px);border-bottom:1px solid var(--line)}
.portfolio-hero h1{margin:0;font-size:clamp(4.2rem,10vw,9.5rem)!important;line-height:.9!important}
.portfolio-deck{margin:30px 0 0;font:400 clamp(1.65rem,3vw,3rem)/1.2 var(--display)}
.portfolio-intro{max-width:760px;margin:24px 0 0;color:var(--muted);font-size:1.125rem;line-height:1.7}
.portfolio-stories{padding-block:clamp(35px,5vw,75px)}
.portfolio-story{display:grid;grid-template-columns:minmax(0,1.16fr) minmax(300px,.84fr);gap:clamp(42px,7vw,105px);align-items:center;padding-block:clamp(68px,8vw,125px);border-bottom:1px solid var(--line)}
.portfolio-story-reverse{grid-template-columns:minmax(300px,.84fr) minmax(0,1.16fr)}
.portfolio-story-reverse .portfolio-story-media{order:2}
.portfolio-story-reverse .portfolio-story-copy{order:1}
.portfolio-story-media{display:grid;grid-template-columns:1.25fr .75fr;gap:14px;align-items:stretch}
.portfolio-story-media figure{position:relative;margin:0;min-height:480px;overflow:hidden;background:#ddd8cf}
.portfolio-story-media figure+figure{min-height:360px;margin-top:92px}
.portfolio-story-media img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.portfolio-story-media figure:hover img{transform:scale(1.015)}
.portfolio-story-media figcaption{position:absolute;left:12px;bottom:12px;background:rgba(54,55,47,.88);color:#fff;padding:7px 10px;font-size:.68rem;line-height:1.3;letter-spacing:.12em;text-transform:uppercase}
.portfolio-story-panoramic{grid-template-columns:1fr}
.portfolio-story-panoramic .portfolio-story-media{grid-template-columns:1.3fr .7fr .7fr;order:2}
.portfolio-story-panoramic .portfolio-story-media figure,.portfolio-story-panoramic .portfolio-story-media figure+figure{min-height:390px;margin-top:0}
.portfolio-story-panoramic .portfolio-story-copy{max-width:780px}
.portfolio-story-before-after .portfolio-story-media{grid-template-columns:1fr 1fr}
.portfolio-story-before-after .portfolio-story-media figure,.portfolio-story-before-after .portfolio-story-media figure+figure{min-height:470px;margin-top:0}
.portfolio-story-copy h2{margin:0;font-size:clamp(2.5rem,4.6vw,5rem)!important}
.portfolio-story-copy>p:not(.eyebrow){max-width:590px;margin:25px 0 0;color:var(--muted);font-size:1.1rem;line-height:1.7}
.portfolio-story-actions{display:flex;flex-direction:column;align-items:flex-start;gap:22px;margin-top:34px}
.portfolio-story-actions .text-link{margin-top:0}
.portfolio-story-actions .button{min-height:54px;padding:13px 22px}
.portfolio-closing{background:var(--ink);color:#fff;text-align:center}
.portfolio-closing .wrap{max-width:860px}
.portfolio-closing .eyebrow{justify-content:center}
.portfolio-closing h2{margin:0 auto 34px;max-width:760px}

/* Villa Cristina editorial story */
.cristina-story{background:var(--sand)}
.cristina-story-heading{display:grid;grid-template-columns:1fr minmax(280px,.65fr);gap:50px;align-items:end;margin-bottom:clamp(55px,7vw,95px)}
.cristina-story-heading .eyebrow{grid-column:1/-1;margin-bottom:-24px}
.cristina-story-heading h2{margin:0}
.cristina-story-heading>p:last-child{margin:0;color:var(--muted);font-size:1.08rem}
.cristina-stage{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:clamp(40px,7vw,105px);align-items:center;padding-block:clamp(40px,5vw,74px);border-top:1px solid #cbc6bd}
.cristina-stage.reverse{grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr)}
.cristina-stage.reverse figure{order:2}
.cristina-stage figure{position:relative;margin:0;min-height:470px;overflow:hidden}
.cristina-stage figure img{width:100%;height:100%;object-fit:cover}
.cristina-stage figcaption{position:absolute;left:14px;bottom:14px;background:rgba(54,55,47,.88);color:#fff;padding:8px 11px;font-size:.7rem;letter-spacing:.13em;text-transform:uppercase}
.cristina-stage div>span{font-size:.75rem;letter-spacing:.14em;color:var(--muted)}
.cristina-stage h3{margin:18px 0 14px;font-size:clamp(1.8rem,3vw,3rem)!important}
.cristina-stage p{margin:0;color:var(--muted);font-size:1.08rem}
.cristina-today{display:grid;grid-template-columns:minmax(280px,.58fr) minmax(0,1.42fr);gap:clamp(42px,7vw,100px);align-items:start}
.cristina-today-copy{position:sticky;top:110px}
.cristina-today-copy h2{margin:0}
.cristina-today-copy>p:last-child{color:var(--muted);font-size:1.08rem}
.cristina-today-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.cristina-today-grid img{width:100%;height:360px;object-fit:cover}
.cristina-today-grid img:first-child{grid-column:1/-1;height:520px}

/* Complete galleries and downloads */
.project-gallery-intro{display:flex;flex-direction:column;align-items:flex-start;gap:24px}
.project-gallery-intro p{margin:0;color:var(--muted)}
.gallery-download-all{min-height:52px;padding:12px 20px}
.project-media-label,.project-hero-label{position:absolute;z-index:2;left:12px;bottom:12px;background:rgba(54,55,47,.9);color:#fff;padding:7px 10px;font-size:.66rem;line-height:1.3;letter-spacing:.12em;text-transform:uppercase;pointer-events:none}
.project-hero-label{left:auto;right:clamp(20px,4vw,60px);bottom:auto;top:110px}
.project-lightbox-download{position:fixed;right:82px;top:20px;z-index:3;min-height:48px;display:inline-flex;align-items:center;border:1px solid rgba(255,255,255,.55);padding:10px 18px;color:#fff;background:rgba(54,55,47,.78);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase}
.project-cta-actions{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}
.project-cta-actions .button{margin:0}
.project-gallery-item:focus-visible,.project-lightbox button:focus-visible,.project-lightbox-download:focus-visible{outline:3px solid var(--gold);outline-offset:3px}

@media (max-width:900px){
  .portfolio-story,.portfolio-story-reverse,.cristina-stage,.cristina-stage.reverse,.cristina-today{grid-template-columns:1fr}
  .portfolio-story-reverse .portfolio-story-media,.portfolio-story-reverse .portfolio-story-copy,.cristina-stage.reverse figure{order:initial}
  .portfolio-story-copy{max-width:720px}
  .cristina-today-copy{position:static}
  .cristina-story-heading{grid-template-columns:1fr;gap:24px}
  .cristina-story-heading .eyebrow{grid-column:auto;margin-bottom:0}
}

@media (max-width:780px){
  .portfolio-page main{padding-top:72px}
  .portfolio-hero{padding:64px 0 60px}
  .portfolio-hero h1{font-size:clamp(3.3rem,17vw,5.5rem)!important}
  .portfolio-deck{margin-top:22px;font-size:1.55rem}
  .portfolio-intro{font-size:1rem}
  .portfolio-story{padding-block:58px;gap:32px}
  .portfolio-story-media,.portfolio-story-panoramic .portfolio-story-media,.portfolio-story-before-after .portfolio-story-media{grid-template-columns:1fr 1fr;gap:8px}
  .portfolio-story-media figure,.portfolio-story-media figure+figure,.portfolio-story-panoramic .portfolio-story-media figure,.portfolio-story-panoramic .portfolio-story-media figure+figure,.portfolio-story-before-after .portfolio-story-media figure,.portfolio-story-before-after .portfolio-story-media figure+figure{min-height:0;height:54vw;max-height:360px;margin-top:0}
  .portfolio-story-panoramic .portfolio-story-media figure:first-child{grid-column:1/-1;height:62vw;max-height:430px}
  .portfolio-story-copy>p:not(.eyebrow){font-size:1rem}
  .portfolio-story-actions{align-items:stretch}
  .cristina-stage{gap:26px;padding-block:46px}
  .cristina-stage figure{min-height:0;height:68vw;max-height:480px}
  .cristina-stage p,.cristina-story-heading>p:last-child,.cristina-today-copy>p:last-child{font-size:1rem}
  .cristina-today-grid img,.cristina-today-grid img:first-child{height:58vw;max-height:430px}
  .project-hero-label{top:90px}
}

@media (max-width:560px){
  .portfolio-story-media,.portfolio-story-panoramic .portfolio-story-media,.portfolio-story-before-after .portfolio-story-media{grid-template-columns:1fr}
  .portfolio-story-media figure,.portfolio-story-media figure+figure,.portfolio-story-panoramic .portfolio-story-media figure,.portfolio-story-panoramic .portfolio-story-media figure+figure,.portfolio-story-before-after .portfolio-story-media figure,.portfolio-story-before-after .portfolio-story-media figure+figure,.portfolio-story-panoramic .portfolio-story-media figure:first-child{grid-column:auto;height:72vw;max-height:390px}
  .cristina-today-grid{grid-template-columns:1fr;gap:8px}
  .cristina-today-grid img:first-child{grid-column:auto}
  .project-lightbox-download{left:12px;right:auto;top:12px;min-height:44px;padding:9px 13px}
  .project-lightbox-count{left:12px;bottom:16px}
  .project-cta-actions{flex-direction:column}
}

@media (prefers-reduced-motion:reduce){.portfolio-story-media img,.home-feature-image img{transition:none}}
