:root{--blue:#05286a;--green:#7bbb06;--ink:#17283c;--paper:#f8f7f3;--line:#d8ddd9}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:12px}body{margin:0;color:var(--ink);background:var(--paper);font-family:Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{max-width:100%;display:block}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.1;margin:0}h1{font-size:clamp(48px,5.7vw,88px)}h2{font-size:clamp(36px,4vw,58px)}h3{font-size:clamp(28px,2.5vw,39px)}p{margin:0 0 20px}:root{--content-max:1280px;--content-gutter:48px}.wrap{width:min(var(--content-max),calc(100% - 2 * var(--content-gutter)));margin:auto}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:2.5px;font-weight:600;margin-bottom:22px}.eyebrow:before{content:'';display:inline-block;width:26px;height:2px;background:var(--green);margin:0 12px 4px 0}.header{position:relative;z-index:10;background:rgba(248,247,243,.97);border-bottom:1px solid var(--line)}.nav{height:90px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{font-family:Georgia,serif;color:var(--blue);font-size:23px;line-height:1.05;letter-spacing:.2px}.brand small{display:block;font-family:Arial,sans-serif;font-size:9px;letter-spacing:3.7px;text-transform:uppercase;margin-top:8px}.navlinks{display:flex;gap:32px;align-items:center;font-size:12px}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:15px 24px;font-size:12px;letter-spacing:.5px;border:1px solid var(--blue);background:var(--blue);color:white;min-height:48px;transition:background .2s}.button:hover{background:#153c7a}.button.light{background:var(--paper);color:var(--blue)}.button.light:hover{background:white}.arrow{font-size:20px}.hero{position:relative;min-height:690px;height:calc(100svh - 90px);max-height:900px;color:white;display:flex;align-items:end}.hero>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center}.hero:after{position:absolute;content:'';inset:0;background:linear-gradient(90deg,rgba(9,20,29,.73),rgba(9,20,29,.08)),linear-gradient(0deg,rgba(9,20,29,.4),transparent 55%)}.hero-content{position:relative;z-index:1;padding-top:100px;padding-bottom:80px}.hero h1{max-width:820px;margin-bottom:25px}.hero p{max-width:470px;color:#e8e8e6;font-size:15px}.hero .button{margin-top:10px;border-color:white;background:rgba(255,255,255,.08)}.hero .button:hover{background:white;color:var(--blue)}.hero-caption{position:absolute;right:48px;bottom:36px;z-index:2;font-size:10px;text-transform:uppercase;letter-spacing:2px}.intro{display:grid;grid-template-columns:1.2fr 1fr;gap:120px;padding:105px 0 75px;align-items:end}.intro p{font-size:15px;color:#5d686f;max-width:440px;margin:0}.collection{padding-bottom:90px}.collection-top{border-top:1px solid var(--line);padding:22px 0 30px;display:flex;justify-content:space-between;font-size:11px;letter-spacing:1.5px;text-transform:uppercase}.properties{display:grid;grid-template-columns:1fr 1fr;column-gap:40px;row-gap:62px}.property-link{display:block}.photo{overflow:hidden;position:relative;background:#e1e4df}.photo img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .7s}.property-link:hover img{transform:scale(1.025)}.code{position:absolute;left:20px;bottom:18px;color:white;font-size:10px;letter-spacing:2px;background:#15283ccc;padding:5px 9px}.card-meta{display:flex;justify-content:space-between;align-items:center;margin:21px 0 12px;font-size:10px;letter-spacing:1.7px;text-transform:uppercase;color:#65717c}.card h3{margin-bottom:15px}.card-specs{font-size:12px;color:#647079;margin:16px 0}.card-bottom{border-top:1px solid var(--line);padding-top:15px;display:flex;justify-content:space-between;align-items:center;color:var(--blue);font-size:13px}.card-bottom strong{font-weight:400;font-size:15px}.contact{background:var(--blue);color:white;padding:85px 0}.contact-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:100px;align-items:center}.contact h2{max-width:650px}.contact p{font-size:14px;color:#d7dfed;margin:20px 0 28px;max-width:490px}.contact .button{background:white;color:var(--blue);border-color:white}.agent{border-left:1px solid #ffffff35;padding:32px 0 32px 55px}.agent span{display:block;font-size:11px;letter-spacing:2px;text-transform:uppercase;color:#c2cde0}.agent h3{margin:15px 0 12px;font-size:31px}.agent p{margin:0}.footer{padding:38px 0 25px;background:white}.footer-main{display:flex;justify-content:space-between;align-items:center;gap:20px}.footer-brand{font-family:Georgia,serif;font-size:23px;color:var(--blue)}.affiliation{text-align:right;font-size:10px;color:#68717a}.affiliation img{width:170px;height:auto;margin:7px 0 0 auto}.footer-bottom{font-size:10px;color:#737e86;border-top:1px solid #e4e7e9;margin-top:26px;padding-top:18px;display:flex;justify-content:space-between;gap:20px}.breadcrumb{font-size:11px;color:#697681;padding:24px 0}.detail-heading{display:grid;grid-template-columns:1.5fr .65fr;gap:80px;padding:22px 0 42px;align-items:end}.detail-heading h1{font-size:clamp(43px,4.7vw,70px)}.detail-heading .eyebrow{margin-bottom:15px}.detail-heading aside{text-align:right}.detail-price{font-family:Georgia,serif;font-size:29px;margin-bottom:18px}.detail-heading aside small{display:block;font-size:11px;margin-bottom:8px;color:#62707c}.detail-hero{position:relative}.detail-hero img{width:100%;height:min(680px,65vw);min-height:300px;object-fit:cover}.detail-hero button{position:absolute;bottom:25px;right:25px}.spec-bar{display:grid;grid-template-columns:repeat(6,1fr);border-bottom:1px solid var(--line);padding:30px 0;gap:20px}.spec-bar strong{display:block;font-family:Georgia,serif;font-size:30px;font-weight:400;color:var(--blue)}.spec-bar span{font-size:11px;color:#6a737a}.detail-copy{padding:90px 0;display:grid;grid-template-columns:1fr 1.7fr;gap:100px}.detail-copy h2{font-size:44px}.description{color:#4d5e6a;font-size:15px;max-width:740px}.highlights{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.highlights span{border:1px solid var(--line);padding:7px 12px;font-size:11px;color:var(--blue)}.fees{font-size:12px;border-top:1px solid var(--line);padding-top:24px;margin-top:32px;display:flex;gap:30px}.gallery-section{padding-bottom:100px}.gallery-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:35px}.gallery-heading p{font-size:12px;color:#69757d;margin:0}.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.gallery button{border:0;padding:0;background:none;overflow:hidden}.gallery img{aspect-ratio:4/3;width:100%;object-fit:cover;transition:transform .5s}.gallery button:hover img{transform:scale(1.03)}.location{border-top:1px solid var(--line);padding:40px 0 70px;display:flex;justify-content:space-between;gap:30px}.location h3{font-size:29px}.location p{font-size:13px;margin:12px 0 0;color:#5d6e7b}.other{padding:75px 0 95px}.other h2{margin-bottom:30px}.other .properties{grid-template-columns:repeat(3,1fr);gap:25px}.other h3{font-size:26px}.lightbox{border:0;padding:0;width:100vw;max-width:100vw;height:100svh;max-height:100svh;background:#0c1420;color:white}.lightbox::backdrop{background:#0c1420}.viewer{height:100%;display:grid;grid-template-rows:60px 1fr 60px;padding:10px 30px}.viewer-top{display:flex;align-items:center;justify-content:space-between;font-size:12px}.viewer-top button,.viewer-bottom button{color:white;background:transparent;border:1px solid #ffffff50;padding:8px 20px;min-height:44px}.viewer-image{width:100%;height:100%;min-height:0;object-fit:contain}.viewer-bottom{display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:12px}.back-link{color:var(--blue);font-size:12px}.floating{position:fixed;bottom:22px;right:24px;z-index:9;box-shadow:0 4px 20px #0002;border:1px solid white}.skip{position:absolute;top:-100px;left:20px;background:white;padding:15px;z-index:50}.skip:focus{top:10px}a:focus-visible,button:focus-visible{outline:3px solid var(--green);outline-offset:5px}@media(max-width:850px){:root{--content-gutter:20px}.nav{height:78px}.navlinks{gap:18px}.navlinks>a:first-child{display:none}.navlinks .button{padding:10px 15px;font-size:11px}.brand{font-size:20px}.hero{min-height:600px;height:calc(90svh - 78px)}.hero-content{padding-bottom:70px}.hero-caption{right:20px;bottom:20px}.intro{gap:35px;padding:65px 0 45px}.properties{gap:35px 24px}.contact-grid{gap:30px}.agent{padding-left:25px}.detail-heading{gap:30px}.detail-copy{gap:40px;padding:65px 0}.spec-bar{grid-template-columns:repeat(3,1fr)}.other .properties{grid-template-columns:1fr 1fr}.other .card:last-child{display:none}}@media(max-width:600px){.navlinks{gap:0}.navlinks>a:not(.button){display:none}.hero{min-height:590px}.hero-content{padding-top:70px}.hero h1{font-size:49px}.hero-caption{max-width:80%;font-size:9px}.intro,.contact-grid,.detail-copy,.detail-heading{grid-template-columns:1fr;gap:28px}.intro h2{font-size:38px}.properties{grid-template-columns:1fr;row-gap:40px}.photo img{aspect-ratio:4/3}.collection-top{font-size:9px;letter-spacing:.8px}.card h3{font-size:33px}.contact{padding:60px 0}.agent{border-left:0;border-top:1px solid #ffffff35;padding:28px 0 0}.footer-main{align-items:start;flex-direction:column}.affiliation{text-align:left}.affiliation img{margin-left:0}.footer-bottom{flex-direction:column;gap:6px;padding-bottom:65px}.detail-heading{padding-top:10px}.detail-heading aside{text-align:left}.detail-price{margin-bottom:15px}.detail-hero img{height:370px;min-height:0}.detail-hero button{right:15px;bottom:15px}.spec-bar strong{font-size:26px}.detail-copy{padding:50px 0}.detail-copy h2{font-size:36px}.fees{flex-direction:column;gap:10px}.gallery-heading{align-items:start;flex-direction:column}.gallery{gap:10px}.gallery img{aspect-ratio:1/1}.gallery-section{padding-bottom:50px}.location{flex-direction:column;padding-bottom:40px}.other{padding:50px 0}.other .properties{grid-template-columns:1fr}.other .card:last-child{display:block}.floating{right:14px;bottom:14px;font-size:11px;padding:12px 18px;min-height:44px}.viewer{padding:10px 15px}.viewer-top span{max-width:60%;font-size:11px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Preserve the complete landscape cover at every screen width. */
.photo img,.detail-hero img{width:100%;height:auto;min-height:0;aspect-ratio:auto;object-fit:contain}
.property-link:hover .photo img{transform:none}
@media(max-width:600px){.detail-hero button{padding:10px 14px;font-size:11px;min-height:44px}}

/* Equal cover frames with complete, uncropped photographs. */
.photo{aspect-ratio:3/2;background:var(--paper)}
.photo img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center}

/* Personal introduction before the footer. */
.about-alexandre{border-top:1px solid var(--line);padding:65px 0;background:#f0f1ec}
.about-grid{display:grid;grid-template-columns:210px 1fr;gap:60px;align-items:center;max-width:1000px}
.about-portrait{width:210px;height:auto;display:block}
.about-copy h2{font-size:40px;margin-bottom:22px}
.about-copy p{font-size:14px;line-height:1.8;color:#51616e;max-width:650px;margin-bottom:16px}
.about-copy .eyebrow{margin-bottom:16px}
.about-copy .about-service{font-size:13px;color:#66727b}
.about-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:25px}
.about-link{font-size:11px;color:var(--blue);text-decoration:underline;text-underline-offset:4px}
@media(max-width:850px){.about-grid{gap:35px;grid-template-columns:180px 1fr}.about-portrait{width:180px}.about-copy h2{font-size:34px}}
@media(max-width:600px){.about-alexandre{padding:45px 0}.about-grid{grid-template-columns:1fr;gap:26px}.about-portrait{width:165px}.about-copy h2{font-size:33px}.about-actions{align-items:start;flex-direction:column;gap:16px}}

/* Individual property galleries preserve each photograph's native ratio. */
.gallery{align-items:start}
.gallery button{display:block;align-self:start;width:100%}
.gallery img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain}
.gallery button:hover img{transform:none}
@media(max-width:600px){.gallery{grid-template-columns:1fr;gap:18px}.gallery img{aspect-ratio:auto;height:auto}}

.seller-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:85px;align-items:center}.seller-contact h2{max-width:620px}.seller-copy p{margin:0 0 22px;max-width:540px}.seller-copy .button{margin-top:5px}@media(max-width:850px){.seller-grid{gap:35px}}@media(max-width:600px){.seller-grid{grid-template-columns:1fr;gap:28px}}

.whatsapp-icon{width:17px;height:17px;flex:0 0 17px;display:block}.button:has(.whatsapp-icon){gap:12px}

.brand .site-logo{width:265px;height:auto;display:block}@media(max-width:850px){.brand .site-logo{width:225px}}@media(max-width:600px){.brand .site-logo{width:180px}.nav{gap:14px}.navlinks .button{gap:8px;padding:10px 11px}.navlinks .button .arrow{display:none}}

.visit-invitation{text-align:center;padding:45px 30px 60px;margin:-35px 0 40px;background:#eef0ea}.visit-invitation h2{font-size:clamp(30px,3.2vw,46px);max-width:800px;margin:0 auto 22px}.visit-invitation p{max-width:580px;margin:0 auto 28px;font-size:14px;color:#5d6e7b}.visit-invitation .eyebrow{margin-bottom:18px}@media(max-width:600px){.visit-invitation{padding:35px 20px 40px;margin:0 0 35px}}

.gallery-editorial{gap:48px 28px;align-items:start}.editorial-photo{margin:0;min-width:0}.gallery-editorial .editorial-wide{grid-column:1/-1}.editorial-photo figcaption{font-size:11px;letter-spacing:.5px;color:#61717b;margin-top:13px;display:flex;gap:18px}.editorial-photo figcaption span{color:var(--blue);font-size:10px}.gallery-editorial img{width:100%;height:auto;aspect-ratio:auto}.gallery-editorial .editorial-wide:last-child{max-width:880px;justify-self:center;width:100%}@media(max-width:600px){.gallery-editorial{grid-template-columns:1fr;gap:30px}.gallery-editorial .editorial-wide{grid-column:auto}.editorial-photo figcaption{margin-top:10px}}

.description-title{font-size:30px;line-height:1.25;color:var(--blue);margin-bottom:26px}

/* Branding overlays on property photographs; the homepage hero is excluded. */
.gallery button{position:relative}
.detail-hero button{right:auto;left:25px;z-index:3}
.viewer-photo{position:relative;min-height:0;width:100%;height:100%}
@media(max-width:600px){.detail-hero button{left:15px}}


.about-grid{grid-template-columns:230px 1fr;gap:48px}.about-portrait{width:230px;height:290px;object-fit:cover;object-position:center bottom}@media(max-width:850px){.about-grid{grid-template-columns:180px 1fr;gap:30px}.about-portrait{width:180px;height:225px}}@media(max-width:600px){.about-grid{grid-template-columns:1fr;gap:24px}.about-portrait{width:180px;height:225px}}

/* Language navigation */
.language-switch{display:flex;align-items:center;gap:9px;flex-shrink:0;font-family:Arial,sans-serif;font-size:11px;letter-spacing:.08em;margin-left:14px}.language-switch a{padding:5px 2px;opacity:.6;text-decoration:none}.language-switch a[aria-current="page"]{opacity:1;border-bottom:1px solid currentColor}.language-switch a:hover{opacity:1}@media(max-width:700px){.nav{flex-wrap:wrap}.language-switch{margin-left:auto;gap:12px}.navlinks{order:3;width:100%;justify-content:center}}


/* Editorial visual system shared with the Vieira Souto collection. */
@font-face{font-family:Montserrat;src:url(/assets/fonts/montserrat-variable.ttf) format("truetype");font-weight:100 900;font-display:swap}
@font-face{font-family:Manrope;src:url(/assets/fonts/manrope-variable.ttf) format("truetype");font-weight:200 800;font-display:swap}
:root{--blue:#053365;--ink:#172638;--green:#84bc26;--paper:#f8f5ee;--line:#dcd6ca;--ivory-panel:#f1ece1;--brand-dark:#03274f}
body{font-family:Manrope,Arial,sans-serif}
h1,h2,h3,.brand,.footer-brand{font-family:Montserrat,Arial,sans-serif;letter-spacing:-.025em}
h2{font-size:clamp(30px,3.3vw,46px);line-height:1.2}
.header{background:var(--blue);color:white;border-color:#ffffff26}
.nav{height:auto;min-height:96px;padding:18px 0;gap:24px}
.brand{color:white;line-height:1.15;min-width:0}
.masthead-category{display:block;color:var(--green);font:600 10px Manrope,Arial,sans-serif;letter-spacing:.24em;text-transform:uppercase;margin-bottom:8px}
.masthead-name{font-size:clamp(16px,2.25vw,27px);display:block}
.navlinks{margin-left:auto;gap:22px}
.navlinks>a:not(.button):hover,.language-switch a:hover{text-decoration:underline;text-underline-offset:5px}
.language-switch{font-family:Manrope,Arial,sans-serif;margin-left:0}
.language-switch a[aria-current="page"]{color:var(--green)}
.button,.contact .button,.hero .button{background:var(--green);border-color:var(--green);color:var(--blue);font-weight:650;gap:12px}
.button:hover,.contact .button:hover,.hero .button:hover{background:#f0cc75;border-color:#f0cc75;color:var(--blue)}
.button.light{background:white;color:var(--blue);border-color:#cbd3d8}
.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:1fr;align-items:stretch;min-height:520px;height:auto;max-height:none;background:var(--blue);color:#fff}
.hero::after{display:none}
.hero>img{position:relative;inset:auto;grid-area:1/2;min-height:0;height:100%;width:100%;object-fit:cover}
.hero-content.wrap{grid-area:1/1;width:auto;margin:auto 0;padding:70px clamp(32px,6vw,105px);min-width:0}
.hero h1{font-size:clamp(39px,4.3vw,67px);font-weight:400;letter-spacing:-.035em}
.hero .eyebrow,.contact .eyebrow{color:var(--green)}
.hero p{max-width:390px;color:#d4dadd}
.hero-caption{bottom:20px;right:22px;max-width:45%;padding:8px 11px;background:#092231df;color:white}
.intro{padding:64px 0 28px;gap:40px}
.collection{padding-bottom:72px}
.collection-top{color:#53626a;padding:18px 0 25px}
.properties,.other .properties{grid-template-columns:repeat(3,minmax(0,1fr));gap:34px 26px}
.card{border-bottom:1px solid #aab4b9;min-width:0}
.card .property-link{height:100%;display:flex;flex-direction:column;padding-bottom:20px}
.card .photo{aspect-ratio:3/2;background:#edf0f1}
.card h3,.other .card h3{font-size:clamp(18px,1.8vw,24px);line-height:1.32;margin:0 0 10px}
.card-meta{margin:14px 0 8px;gap:8px}
.card-specs{line-height:1.65;margin:4px 0 15px}
.card-bottom{margin-top:auto;padding-top:10px;border:0;gap:8px}
.card-bottom strong,.detail-price,.spec-bar strong{font-family:Manrope,Arial,sans-serif;font-weight:650;font-variant-numeric:tabular-nums}
.card-bottom strong{font-size:17px}
.card-bottom>span{font-size:11px;text-align:right}
.detail-heading{gap:32px;grid-template-columns:minmax(0,1fr) minmax(240px,.42fr)}
.detail-heading h1{font-size:clamp(35px,4vw,58px);line-height:1.12}
.detail-heading aside{border:1px solid var(--line);padding:20px;text-align:left}
.detail-copy{gap:clamp(30px,6vw,84px)}
.detail-copy h2{font-size:clamp(29px,3.1vw,43px)}
.editorial-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;grid-column:1/-1}
.contact,.footer{background:var(--blue);color:#fff}
.footer{border-top:1px solid #ffffff26}
.footer-brand,.affiliation,.footer-bottom{color:#e1e8eb}
.affiliation img{background:#fff;padding:5px 8px}
.footer-bottom{border-color:#ffffff35}
.about-alexandre,.visit-invitation{background:#f4f6f6}
@media(max-width:960px){.properties,.other .properties{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-content.wrap{padding:58px 32px}.navlinks{gap:14px}.navlinks>a:first-child{display:inline}}
@media(max-width:760px){.nav{min-height:0;gap:12px;padding:16px 0}.navlinks{order:3;width:100%;justify-content:space-between;margin:0;gap:12px}.navlinks>a:not(.button){display:inline}.navlinks .button{min-height:40px;padding:8px 12px}.hero{grid-template-columns:1fr;grid-template-rows:auto auto;min-height:0}.hero-content.wrap{grid-area:1/1;padding:42px 22px}.hero>img{grid-area:2/1;aspect-ratio:3/2;height:auto}.hero-caption{max-width:85%;right:12px;bottom:12px}.intro{gap:20px}.detail-heading{grid-template-columns:1fr}.detail-heading aside{padding:15px}}
@media(max-width:560px){.properties,.other .properties,.editorial-pair{grid-template-columns:1fr}.card h3,.other .card h3{font-size:22px}.navlinks>a{font-size:11px}.hero h1{font-size:clamp(34px,10vw,48px)}.intro{padding:45px 0 24px}.intro h2{font-size:32px}.card .property-link{padding-bottom:15px}}
@media(max-width:760px){.nav{flex-wrap:wrap}.language-switch{margin-left:auto}}

.property-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;align-items:end;gap:16px;background:#f4f6f6;border:1px solid var(--line);padding:18px;margin:0 0 24px}
.filter-field{min-width:0}.filter-field label{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin:0 0 7px}
.filter-field select,.filter-reset{min-height:44px;border:1px solid #aab4b9;color:var(--ink);background:white;font:inherit;font-size:13px;padding:8px 12px}
.filter-field select{width:100%}.filter-reset:hover{background:var(--blue);color:white}.filter-field select:focus-visible{outline:3px solid var(--green);outline-offset:3px}
.filter-status{font-size:14px;margin:0 0 20px}.property-filters[hidden],.filter-status[hidden],.collection .card[hidden]{display:none}
@media(max-width:760px){.property-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:420px){.property-filters{grid-template-columns:1fr;gap:12px}}

.catalogue-more{text-align:center;margin-top:32px}.catalogue-more .button[hidden]{display:none}.catalogue-more:has([hidden]){margin-top:0}

/* Editorial guide to the neighbourhood. */
.navlinks .bairro-nav{display:inline}.navlinks .bairro-nav[aria-current=page]{color:var(--green)}
.bairro-teaser,.bairro-hero{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center}
.bairro-teaser{padding:24px 0 78px;gap:clamp(24px,6vw,84px)}
.bairro-teaser h2{margin-bottom:18px}.bairro-teaser p{max-width:420px}
.bairro-image{margin:0;min-width:0}.bairro-image img{width:100%;height:auto;aspect-ratio:8/5;object-fit:cover}
.bairro-image figcaption{padding:8px 0;color:#53626a;font-size:11px}.bairro-image figcaption a{text-decoration:underline;text-underline-offset:2px}
.bairro-hero{background:var(--blue);color:white;align-items:stretch}.bairro-hero>div{margin:auto 0;padding:clamp(30px,6vw,88px)}
.bairro-hero h1{font-size:clamp(39px,4.3vw,67px);margin-bottom:22px}.bairro-hero .eyebrow{color:var(--green)}
.bairro-hero p{color:#d4dadd;max-width:460px}.bairro-hero .bairro-image{display:flex;flex-direction:column}.bairro-hero img{flex:1;min-height:0;height:100%}.bairro-hero figcaption{color:#d4dadd;padding:8px 16px}
.bairro-content{padding:40px 0 72px}.bairro-index{display:flex;flex-wrap:wrap;gap:12px 24px;padding:14px 0 24px;border-bottom:1px solid var(--line);font-size:13px}.bairro-index a{text-decoration:underline;text-underline-offset:3px}
.bairro-story{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:clamp(24px,7vw,105px);padding:44px 0;border-bottom:1px solid var(--line)}.bairro-story p,.bairro-story ul{margin:0;color:#53626a}.bairro-story ul{padding-left:20px}.bairro-story li+li{margin-top:8px}
.bairro-points{padding:38px 28px;margin:34px 0 0;background:#f4f6f6}.bairro-points>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:20px}.bairro-points h3{font-size:20px;margin:0 0 8px}.bairro-points p{font-size:14px;margin:0;color:#53626a}.bairro-points a:hover{text-decoration:underline}
.bairro-faq{padding-top:42px;max-width:850px}.bairro-faq h2{margin-bottom:20px}.bairro-faq details{border-bottom:1px solid var(--line);padding:12px 0}.bairro-faq summary{cursor:pointer;font-weight:650}.bairro-faq p{margin:10px 0 0;color:#53626a}
.bairro-contact .wrap>div{display:flex;flex-wrap:wrap;gap:12px}.bairro-contact .button.light{background:transparent;color:white;border-color:#ffffff70}
@media(max-width:760px){.navlinks{flex-wrap:wrap;justify-content:flex-start;gap:9px 14px}.navlinks .button{margin-left:auto}.bairro-hero,.bairro-teaser,.bairro-story{grid-template-columns:1fr}.bairro-teaser{padding-bottom:52px}.bairro-hero img{flex:auto;height:auto}.bairro-points>div{grid-template-columns:1fr}.bairro-story{padding:30px 0}.bairro-content{padding-bottom:48px}}

html[lang="zh-Hans"] body,html[lang="zh-Hans"] h1,html[lang="zh-Hans"] h2,html[lang="zh-Hans"] h3{font-family:Manrope,"Microsoft YaHei","PingFang SC","Noto Sans CJK SC",sans-serif;letter-spacing:normal}html[lang="zh-Hans"] .eyebrow,html[lang="zh-Hans"] .masthead-category{letter-spacing:.12em}

/* Market snapshot */
.navlinks .market-nav{display:inline}.navlinks .market-nav[aria-current=page]{color:var(--green)}
.market-hero{background:var(--blue);color:white;padding:60px 0}
.market-hero-grid,.market-teaser,.market-method{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,6vw,84px);align-items:start}
.market-hero-grid{align-items:center}.market-hero h1{font-size:clamp(38px,4.5vw,66px);margin:0 0 20px}.market-hero .eyebrow{color:var(--green)}.market-hero p{color:#d4dadd;max-width:550px}
.market-summary{border:1px solid #ffffff35;padding:clamp(16px,3vw,30px)}.market-summary p{font-size:12px;letter-spacing:.04em;margin:0 0 16px}
.market-summary dl{display:grid;grid-template-columns:1fr 1fr;margin:0;gap:18px}
.market-summary dl div{border-top:1px solid #ffffff35;padding:12px 0 0;min-width:0}.market-summary dl div:last-child{grid-column:1/-1}
.market-summary dt,.market-teaser-number span{font-size:12px}.market-summary dd{color:var(--green);margin:5px 0 0;font-size:clamp(19px,2.1vw,31px);font-weight:650;font-variant-numeric:tabular-nums;line-height:1.25;overflow-wrap:anywhere}.market-summary small{display:block;font-size:11px;color:#d4dadd;margin-top:6px}
.market-content{padding:60px 0}.market-content h2,.market-teaser h2{margin-bottom:16px}.market-content p,.market-teaser p{color:#53626a}
.market-bars{padding:0;list-style:none;margin:24px 0 0;max-width:1000px}.market-bars li{display:grid;grid-template-columns:minmax(150px,1fr) minmax(65px,1.4fr) minmax(65px,auto);gap:12px;align-items:center;padding:12px 0;border-top:1px solid var(--line);font-size:14px}.market-bars li strong{text-align:right;white-space:nowrap}.market-bar{display:block;height:10px;background:#eef1f2}.market-bar>span{display:block;height:100%;background:#b18b37}
.market-method{border-top:1px solid var(--line);margin-top:42px;padding-top:35px}.market-method p:last-child{margin-bottom:0}
.market-teaser{padding:55px 0;align-items:center}.market-teaser-number{background:#f4f6f6;padding:24px;border-left:3px solid var(--green);display:flex;flex-direction:column;gap:4px}.market-teaser-number strong{font-size:clamp(24px,4vw,46px);font-variant-numeric:tabular-nums}.market-teaser-number small{color:#53626a}
@media(max-width:900px){.navlinks{gap:13px}.nav{gap:14px}}
@media(max-width:760px){.market-hero-grid,.market-teaser,.market-method{grid-template-columns:1fr}.market-hero,.market-content,.market-teaser{padding:40px 0}.market-bars li{font-size:12px;grid-template-columns:minmax(105px,1fr) minmax(36px,.55fr) auto;gap:8px}.navlinks{flex-wrap:wrap}}

.market-summary dd small{font-weight:400}@media(max-width:960px){.nav{flex-wrap:wrap}.navlinks{order:3;width:100%;margin:0;justify-content:flex-start;flex-wrap:wrap}.language-switch{margin-left:auto}.navlinks .button{margin-left:auto}}

.crm-photo-unavailable{display:grid;place-items:center;text-align:center;padding:30px;color:#53626a;font-size:13px;height:100%}.crm-detail-unavailable{background:#f4f6f6;border:1px solid var(--line);margin-bottom:12px}.crm-detail-unavailable .crm-photo-unavailable{min-height:100px}

.municipal-market{max-width:1060px;padding-block:clamp(36px,7vw,96px)}.municipal-market h1{font-size:clamp(36px,6vw,76px);line-height:1.03;margin:14px 0 20px}.municipal-market .eyebrow{margin-top:24px}.municipal-market .market-lead{font-size:clamp(17px,2vw,22px);max-width:670px}.municipal-market .text-link{color:var(--blue);text-underline-offset:4px}.market-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:18px 0;border-block:1px solid var(--line);margin-top:32px}.market-toolbar select{font:inherit;padding:8px 14px;background:white;border:1px solid var(--line)}.market-toolbar span,.market-period,.municipal-market .market-source{color:#52616a;font-size:14px}.municipal-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:24px 0}.municipal-kpis div,.market-change,.farol-support{background:#f4f6f6;padding:clamp(14px,3vw,32px)}.municipal-kpis dt{font-size:13px}.municipal-kpis dd,.market-change strong{font-size:clamp(18px,3vw,34px);font-variant-numeric:tabular-nums;color:var(--blue);margin:8px 0 0}.market-change{border-left:3px solid var(--green)}.market-change p{margin:0}.municipal-market h2{margin-top:40px}.market-line{width:100%;height:auto;display:block}.market-line text{font-size:13px;fill:#52616a}.market-line .point{stroke:#092231;stroke-width:2;fill:#092231}.market-line .hollow{fill:white}.monthly-table-wrap{overflow:auto}.monthly-table{width:100%;border-collapse:collapse}.monthly-table th,.monthly-table td{text-align:left;padding:9px;border-bottom:1px solid var(--line)}.municipal-market summary{cursor:pointer;padding-block:12px}.farol-support{margin:36px 0 24px}.farol-support h2,.farol-support .eyebrow{margin-top:0}.farol-criteria{margin-top:16px}.market-table-toggle{border-block:1px solid var(--line)}@media(max-width:650px){.municipal-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.market-line text{font-size:19px}}

.barra-opening{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:clamp(24px,5vw,80px);padding-block:clamp(32px,6vw,84px)}.barra-opening h1{font-size:clamp(36px,5.2vw,76px);line-height:1.04;margin:12px 0 22px}.barra-opening p{max-width:490px}.barra-opening .button{margin-top:10px}.barra-photo{margin:0;min-width:0}.barra-photo img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain}.barra-photo figcaption{font-size:11px;color:#52616a;padding-top:8px;line-height:1.5}.bairro-hero .barra-photo figcaption{color:inherit}.barra-photo figcaption a{color:inherit;text-decoration:underline;text-underline-offset:2px}.barra-views{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.barra-landscape .barra-photo{margin-top:12px}@media(max-width:760px){.barra-opening,.barra-views{grid-template-columns:1fr}.barra-opening h1{font-size:clamp(35px,9vw,52px)}}

/* Brasil Brokers - azul e marfim */
body{background:var(--paper);color:var(--ink)}
.barra-opening h1,.intro h2,.detail-heading h1,.municipal-market h1{color:var(--blue)}
.button,.hero .button{background:var(--blue);border-color:var(--blue);color:white}
.button:hover,.hero .button:hover{background:var(--brand-dark);border-color:var(--brand-dark);color:white}
.header .button,.contact .button{background:var(--paper);border-color:var(--paper);color:var(--blue)}
.header .button:hover,.contact .button:hover{background:#eae2d3;border-color:#eae2d3;color:var(--blue)}
.button.light{background:transparent;color:var(--blue);border-color:var(--blue)}
.contact .button.light{background:transparent;color:white;border-color:#ffffff9c}
.contact .button.light:hover{background:var(--paper);color:var(--blue)}
.about-alexandre,.visit-invitation,.market-teaser-number,.municipal-kpis div,.market-change,.farol-support{background:var(--ivory-panel)}
.market-bar>span{background:var(--green)}
a:focus-visible,button:focus-visible,.filter-field select:focus-visible{outline-color:#507919}
.header a:focus-visible,.contact a:focus-visible,.footer a:focus-visible{outline-color:var(--green)}


.collection-footer{padding:clamp(30px,5vw,64px) 0 24px;color:white}
.collection-footer-top,.collection-footer-bottom{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:28px 44px}
.collection-footer h2{font-size:17px;line-height:1.3;margin:0 0 15px;color:white}
.collection-footer a{color:white;text-underline-offset:4px}.collection-footer a:hover{color:var(--green)}
.collection-footer-links{display:flex;flex-wrap:wrap;gap:8px 20px;margin-bottom:14px}
.collection-footer p{margin:4px 0 8px}.collection-footer-bottom{margin-top:30px;padding-top:22px}
.collection-footer-label{display:block;font-size:10px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px}
.collection-footer .footer-brand{font-size:clamp(22px,3vw,32px);color:white}
.collection-footer-bottom img{display:block;width:170px;height:auto;background:var(--paper);padding:7px 10px}
@media(max-width:670px){.collection-footer-top,.collection-footer-bottom{grid-template-columns:1fr;gap:22px}}

.about-brokers{background:var(--ivory-panel);padding:clamp(36px,6vw,84px) 0}
.brokers-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,6vw,84px);align-items:start}
.brokers-grid h2{margin:12px 0 0;color:var(--blue)}
.brokers-grid p:first-child{margin-top:0}
.brokers-grid .button{margin-top:8px}
@media(max-width:760px){.brokers-grid{grid-template-columns:1fr}}

/* Property detail */
.listing-back{display:inline-block;margin:28px 0 4px;color:var(--blue);text-underline-offset:4px;font-size:13px}
.listing-back+.detail-heading{display:block;padding-block:14px 24px}
.listing-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,290px);gap:clamp(24px,4vw,54px);align-items:start;margin-top:30px}
.listing-content{min-width:0}
.listing-content .detail-copy{display:block}
.listing-content .detail-copy h2{margin-bottom:18px}
.listing-content .spec-bar{grid-template-columns:repeat(auto-fit,minmax(98px,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.listing-content .spec-bar>div{background:var(--paper);padding:12px 8px;border:0}
.listing-contact{position:sticky;top:20px;background:var(--ivory-panel);border:1px solid var(--line);padding:24px;color:var(--blue)}
.listing-contact .detail-price{margin:8px 0 18px}
.listing-contact .button{max-width:100%;white-space:normal}
@media(max-width:850px){.listing-layout{display:flex;flex-direction:column}.listing-contact{position:static;order:-1;width:100%}.listing-content{width:100%}}

.listing-cover,.listing-photo-grid button{display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in}
.detail-hero .listing-cover{position:static}
.detail-hero .listing-cover img{display:block;width:100%;height:auto;max-height:650px;object-fit:cover}
.listing-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.listing-photo-grid img{display:block;width:100%;height:200px;object-fit:cover}
@media(max-width:760px){.detail-hero .listing-cover img{max-height:440px}.listing-photo-grid{gap:10px}.listing-photo-grid img{height:auto;aspect-ratio:4/3}}

/* Acabamento das páginas de imóveis */
.listing-layout {
  margin-top: clamp(32px, 5vw, 64px);
}
.listing-content .spec-bar {
  grid-template-columns: repeat(auto-fit, minmax(108px, 1fr));
  background: transparent;
  border: 0;
  border-block: 1px solid var(--line);
  gap: 18px 0;
  padding: 20px 0;
}
.listing-content .spec-bar > div {
  background: transparent;
  padding: 4px 14px;
  border-inline-start: 1px solid var(--line);
}
.listing-content .spec-bar > div:first-child {
  border-inline-start: 0;
}
.listing-content .spec-bar strong {
  font-size: clamp(21px, 2.2vw, 31px);
  font-weight: 550;
  line-height: 1.25;
}
.listing-content .spec-bar span {
  display: block;
  margin-top: 6px;
  color: #4f5c65;
  font-size: 12px;
}
.listing-contact {
  background: transparent;
  border: 0;
  border-block-start: 2px solid var(--blue);
  padding: 24px 0 0;
}
.listing-contact small {
  display: block;
  font-size: 11px;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.listing-contact .detail-price {
  font-size: clamp(26px, 2.8vw, 38px);
  line-height: 1.15;
  font-weight: 550;
  margin: 12px 0 22px;
}
.listing-contact .button {
  justify-content: center;
  min-height: 48px;
  padding: 10px 16px;
}
.listing-content .description {
  max-width: 72ch;
  line-height: 1.75;
}
.listing-content .gallery-section {
  margin-top: clamp(30px, 4vw, 52px);
}
@media (max-width: 850px) {
  .listing-content .spec-bar {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .listing-content .spec-bar > div:nth-child(3n + 1) {
    border-inline-start: 0;
  }
}
@media (max-width: 380px) {
  .listing-content .spec-bar > div {
    padding-inline: 8px;
  }
}


.listing-contact {
  position: sticky;
  top: 24px;
  align-self: start;
  background: #fffdf8;
  border: 1px solid var(--line);
  border-radius: 16px;
  padding: clamp(20px, 2.4vw, 32px);
}
.listing-contact .detail-price { overflow-wrap: anywhere; }
.listing-fees { list-style: none; margin: 0 0 24px; padding: 0; }
.listing-fees li + li { margin-top: 10px; }
@media (max-width: 850px) {
  .listing-contact { position: static; }
}

/* Botões e controles de formulário */
:root { --control-radius: 10px; }
a.button,
button:not([data-photo]),
select {
  border-radius: var(--control-radius);
}
.property-filters {
  border-radius: 14px;
}

.collection-footer-top,.collection-footer-bottom{grid-template-columns:repeat(2,minmax(0,1fr))}
.collection-footer h2,.collection-footer-label{color:var(--green);font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:600}
.collection-footer h2{margin-bottom:24px}
.footer-store h3{font-size:17px;margin:0 0 8px;color:white}
.footer-store address{font-style:normal;line-height:1.7}
.collection-footer-bottom{margin-top:clamp(32px,5vw,60px);padding-top:28px}
.collection-footer-bottom>div:last-child{text-align:right}
.footer-wordmark{display:block;font-size:clamp(24px,3vw,34px);font-weight:650;color:white}
@media(max-width:670px){.collection-footer-top,.collection-footer-bottom{grid-template-columns:1fr}.collection-footer-bottom>div:last-child{text-align:left}}
.collection-footer-bottom>div:last-child{display:flex;align-items:center;justify-content:flex-end;gap:clamp(16px,3vw,42px)}
.footer-curation{max-width:22ch;text-align:left;font-size:14px}
@media(max-width:670px){.collection-footer-bottom>div:last-child{justify-content:flex-start;flex-wrap:wrap}}

.listing-content .spec-bar > div { text-align: center; }

/* Ajusta o preço à largura interna do quadro. */
.listing-contact { container-type: inline-size; }
.listing-contact .detail-price {
  white-space: nowrap;
  font-size: clamp(16px, 14cqi, 38px);
}

.listing-content .detail-copy:has(+ .gallery-section) {
  padding-bottom: 0;
}
.listing-content .detail-copy:has(+ .gallery-section) .description > :last-child {
  margin-bottom: 0;
}
.listing-content .detail-copy + .gallery-section {
  margin-top: clamp(28px, 4vw, 44px);
}
.collection-footer-bottom img.footer-wordmark {
  width: min(220px, 50vw);
  height: auto;
  padding: 0;
  background: transparent;
}

/* Diagramação das fotos no guia do bairro */
.bairro-story.barra-landscape{display:block}
.barra-landscape>div>p{max-width:72ch}
.barra-views{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(16px,3vw,36px);margin-top:24px}
.barra-views img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.barra-landscape#cultura{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:clamp(16px,4vw,48px)}
.barra-landscape#cultura figure{margin-top:24px}
@media(max-width:760px){.barra-views,.barra-landscape#cultura{grid-template-columns:1fr}}

/* Alinha a abertura do guia às margens do cabeçalho e do conteúdo. */
.bairro-hero {
  padding-inline: max(var(--content-gutter), calc((100% - var(--content-max)) / 2));
  column-gap: clamp(24px, 4vw, 56px);
}
.bairro-hero > div { padding-inline: 0; }
.header .language-switch a:last-child { padding-inline-end: 0; }


.header .wrap.nav { padding-inline: 0; }
@media (max-width: 960px) { .header .navlinks { justify-content: space-between; } }

#servicos-barra > .barra-service-photos {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: clamp(12px, 2vw, 24px);
  margin: 24px 0 32px;
  align-items: start;
}
.barra-service-photos img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; }
@media (max-width: 960px) {
  #servicos-barra > .barra-service-photos { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 420px) {
  #servicos-barra > .barra-service-photos { grid-template-columns: 1fr; }
}

.detail-hero .listing-cover img[src*="/1578832/2016895/"] {
  aspect-ratio: 1080 / 612;
}

.blue-community{padding-block:32px 48px}
.blue-community p{max-width:76ch}
.blue-community-photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,2vw,24px)}
.blue-community-photos img{width:100%;aspect-ratio:3/2;object-fit:cover}
@media(max-width:680px){.blue-community-photos{grid-template-columns:1fr}}

@media(min-width:1000px){.blue-community-photos{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(min-width:681px) and (max-width:999px){.blue-community-photos{grid-template-columns:repeat(2,minmax(0,1fr))}}

.blue-community-photos.condo-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}
.condo-directory img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;margin-bottom:14px}
.condo-directory a{display:block;text-decoration:none;color:var(--blue)}
.condo-directory h3{margin:0}
@media(max-width:680px){.blue-community-photos.condo-gallery{grid-template-columns:1fr}}

@media(min-width:961px){.property-filters{grid-template-columns:repeat(5,minmax(0,1fr)) auto}}

.orla-index{display:flex;flex-wrap:wrap;gap:.65rem 1.6rem;padding:0 0 1.5rem;margin:0 0 .5rem;border-bottom:1px solid var(--line)}.orla-index a{color:var(--blue);text-underline-offset:.25em}.orla-story{scroll-margin-top:1.5rem}.orla-story .orla-sources{font-size:.85rem;line-height:1.6;margin-top:1rem}.orla-sources a{text-underline-offset:.2em}

.orla-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.25rem 0}.orla-cards article{padding:1.15rem 1.25rem;border:1px solid var(--line);border-radius:12px}.orla-cards h3{margin:0 0 .45rem;font-size:1.15rem;color:var(--blue)}.orla-cards article p{margin:0}.orla-story div>p+p{margin-top:1rem}@media(max-width:620px){.orla-cards{grid-template-columns:1fr}}

.orla-posto-photo{margin:1.25rem 0}.orla-posto-photo img{display:block;width:100%;height:auto}

/* Shared alignment for the home contact sections. */
.seller-contact, .about-brokers { padding: clamp(36px, 6vw, 84px) 0; }
.seller-contact .seller-grid, .about-brokers .brokers-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(24px, 6vw, 84px); align-items: start; }
.seller-grid h2, .brokers-grid h2 { max-width: none; margin: 12px 0 0; }
.seller-grid p, .brokers-grid p { max-width: none; margin: 0 0 22px; }
.seller-grid .button, .brokers-grid .button { margin-top: 8px; }
@media (max-width: 760px) {
  .seller-contact .seller-grid, .about-brokers .brokers-grid { grid-template-columns: minmax(0, 1fr); gap: 24px; }
}

.listing-highlights{margin-top:1.4rem}.listing-highlights h3{font-size:.875rem;margin:0 0 .55rem}.listing-highlights ul{display:flex;flex-wrap:wrap;gap:.55rem;padding:0;margin:0;list-style:none}.listing-highlights li{border:1px solid var(--line);padding:.4rem .65rem;color:var(--blue);font-size:.875rem}

.card-meta .card-reference{display:block;margin-inline-start:auto;text-align:end;white-space:nowrap;text-transform:none;letter-spacing:.04em;font-variant-numeric:tabular-nums}

.properties:has(> .card .card-bottom){align-items:stretch}
.properties > .card:has(.card-bottom) > a{display:flex;flex-direction:column;height:100%;min-width:0}
.properties > .card .card-bottom{display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;margin-top:auto}
.properties > .card .card-bottom > :first-child{white-space:nowrap}

.properties > .card .card-specs{margin-top:auto;margin-bottom:0;min-height:2.8em;line-height:1.4}
.properties > .card .card-bottom{margin-top:0;padding-top:8px}

.barra-opening{padding-block-end:clamp(18px,3vw,42px)}
.barra-opening + .intro{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(24px,5vw,80px);padding-block-start:clamp(16px,2vw,30px)}
.barra-opening + .intro > p{max-width:58ch}
@media(max-width:760px){.barra-opening + .intro{grid-template-columns:minmax(0,1fr);gap:16px}}

.collection-pagination:has(>#load-more),.catalogue-more,.collection-more,.load-more-wrap{text-align:center}
#load-more{display:block;width:fit-content;max-width:100%;min-height:52px;margin:clamp(24px,4vw,48px) auto 0;padding:12px clamp(18px,3vw,48px);border:0;border-radius:12px;text-align:center;cursor:pointer;font-size:.875rem}
#load-more[hidden],.collection-pagination[hidden],.card[hidden]{display:none!important}

.properties > .card:has(.card-bottom){padding-bottom:0}
.properties > .card:has(.card-bottom) > a{padding-bottom:12px}
.properties > .card .card-reference{margin-block:0}
.properties > .card > a > .card-reference,.properties > .card .card-meta{margin-block:8px 5px}
.properties > .card:has(.card-bottom) h3{margin-block:0 7px;line-height:1.25}
.properties > .card .card-specs{margin-block:auto 0;min-height:2.7em;line-height:1.35}
.properties > .card .card-bottom{margin-top:0;min-height:0;padding-top:3px}
@media(max-width:540px){.properties > .card .card-specs{min-height:0}}

#load-more.button{background:#07315c;color:#fff;border:1px solid #07315c;font-weight:650}
#load-more.button:hover{background:#0e467c;border-color:#0e467c;color:#fff}
#load-more.button:focus-visible{outline:2px solid #07315c;outline-offset:4px}

.home-whatsapp{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));z-index:20;display:inline-flex;align-items:center;gap:.65rem;padding:.8rem 1rem;border-radius:12px;background:#07315c;color:#fff;font-size:.9rem;font-weight:650;text-decoration:none;box-shadow:0 4px 18px #0003}.home-whatsapp svg{width:19px;height:19px}.home-whatsapp:hover{background:#0e467c;color:#fff}.home-whatsapp:focus-visible{outline:2px solid #07315c;outline-offset:4px}
