/* Motion uses opacity/transform; text and header keep their layout dimensions. */
:root {
    --ease-out: cubic-bezier(.22, 1, .36, 1);
    --ease-soft: cubic-bezier(.4, 0, .2, 1);
    --header-height: 95px;
    --compact-header-height: 95px;
}
.template-leisgold { --header-height: clamp(94px, 9.20885vw, 176.81px); --compact-header-height: 84px; }

/* Pointer focus must not draw a rectangular box around filter icons or the search input. */
.catalog-filters .purpose-tabs label:focus-within,
.catalog-filters .lifestyle:focus-within,
.catalog-filters .lifestyle:focus,
.catalog-filters .lifestyle:focus-visible,
.catalog-filters .search-box input:focus,
.catalog-filters .search-box input:focus-visible,
.catalog-filters .search-box button:focus,
.catalog-filters .search-box button:focus-visible {
    outline: 0;
}
.catalog-filters .purpose-tabs label:has(input:focus-visible) .pill,
.catalog-filters .lifestyle:has(input:focus-visible) .pill,
.catalog-filters .lifestyle:focus-visible .pill {
    box-shadow: 0 0 0 2px var(--paper), 0 0 0 4px var(--rust);
}
.catalog-filters .search-box:has(input:focus-visible),
.catalog-filters .search-box:has(button:focus-visible) {
    border-color: var(--rust);
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--rust) 28%, transparent);
}

.site-header { top: calc(var(--compact-header-height) - var(--header-height)); }
.header-inner, .is-scrolled .header-inner, .template-essencial .header-inner {
    height: var(--header-height);
    min-height: var(--header-height);
    transition: none;
}
.main-nav a { transition: color 220ms var(--ease-soft); }
.subnav {
    display: block;
    padding-top: clamp(40px, 3.2vw, 61px);
    padding-bottom: 12px;
    background: transparent;
    visibility: hidden;
    opacity: 0;
    transform: translateY(-5px);
    transition: opacity 220ms var(--ease-soft), transform 300ms var(--ease-out), visibility 220ms;
}
.nav-item:is(:hover, :focus-within) .subnav { visibility: visible; opacity: 1; transform: none; }

/* Both real font faces reserve the same cell, including when a title wraps. */
.highlight-links a:hover, .menu-content a:hover { font-style: normal; }
.soft-word { display: inline-grid; vertical-align: baseline; }
.soft-word > span, .soft-word > em {
    grid-area: 1 / 1;
    font-weight: inherit;
    transition: opacity 260ms var(--ease-soft);
}
.soft-word > span { font-style: normal; opacity: 1; }
.soft-word > em { font-style: italic; opacity: 0; }
.soft-italic:is(:hover, :focus-visible) .soft-word > span { opacity: 0; }
.soft-italic:is(:hover, :focus-visible) .soft-word > em { opacity: 1; }
.hero-crossfade { position: absolute; inset: 0; pointer-events: none; }
.card-image img { transition: transform 700ms var(--ease-out); }
.card-details { transition: transform 480ms var(--ease-out); }
.property-card:is(:hover, :focus-within) .card-image img { transform: scale(1.025); }
.pill, .favorite, .carousel-controls button {
    transition: background-color 220ms var(--ease-soft), color 220ms var(--ease-soft), border-color 220ms var(--ease-soft);
}
.instagram-caption { transition: opacity 300ms var(--ease-soft); }
.instagram-card:focus-within .instagram-caption { opacity: 1; }
.menu-dialog { will-change: transform, opacity; }
.menu-dialog { padding: 0 0 4.166667vw; }
.menu-top, .menu-content { width: 89.583333%; max-width: 1720px; margin-inline: auto; }
.menu-top { height: var(--header-height); }
.menu-top .brand { width: 17.1%; transform: translateY(2vw); }
.menu-top > button { transform: translateY(2vw); }
.menu-logo { display: block; width: 100%; aspect-ratio: 297.66 / 68.51; color: var(--ink); }
.menu-logo svg { display: block; width: 100%; height: auto; fill: currentColor; }
.menu-content { grid-template-columns: 1fr 1fr; gap: 2.8125vw 1.302083vw; min-height: 33.61vw; padding: 3.125vw 0 3.75vw; align-content: start; }
.menu-content > p { font-size: clamp(36px, 4.166667vw, 80px); line-height: 1.2; max-width: 33.854167vw; margin-bottom: 0; }
.menu-content > p em { font-weight: 500; }
.menu-content .menu-primary { grid-template-columns: 49.22% 50.78%; gap: 0; padding-top: 1.875vw; font-size: clamp(18px, 2.083333vw, 40px); line-height: 1.4; }
.menu-column { display: flex; flex-direction: column; align-items: start; gap: .625vw; min-width: 0; }
.menu-column > a { max-width: 100%; }
.menu-column > a:first-child { margin-bottom: 1.666667vw; }
.menu-content .menu-secondary { grid-column: 2; display: flex; flex-wrap: wrap; gap: 12px 24px; padding-top: 0; font-size: clamp(11px, .78125vw, 15px); }
.menu-dialog::backdrop { animation: backdrop-in 280ms var(--ease-soft) both; }
.menu-dialog.is-closing::backdrop { animation: backdrop-out 220ms var(--ease-soft) both; }
@keyframes backdrop-in { from { opacity: 0; } to { opacity: 1; } }
@keyframes backdrop-out { from { opacity: 1; } to { opacity: 0; } }

/* Desktop geometry follows the complete home board (PDF page 12, 1920 px). */
@media (min-width: 761px) {
    .menu-content > p { transform: translateY(-1vw); }
    .template-leisgold .wrap, .template-leisgold .header-inner { width: 89.583333%; }
    .template-leisgold.is-scrolled .header-inner > .brand,
    .template-leisgold.is-scrolled .menu-toggle { transform: translateY(2vw); }
    .template-leisgold.is-scrolled .main-nav { transform: translate(-50%, 2vw); }
    .template-leisgold .hero { height: 30.96354vw; max-height: 594.5px; min-height: 0; }
    .template-leisgold .hero h1 { font-size: clamp(38px, 4.166667vw, 80px); transform: translate(.442708vw, -.92vw); }
    .template-leisgold .hero-image { height: 28.84635vw; max-height: 553.85px; }
    .template-leisgold .highlights {
        padding: 3.4vw 12% 3.25vw;
        border-bottom: 1px solid var(--rust);
    }
    .template-leisgold .highlights .eyebrow { font-size: clamp(12px, 1.041667vw, 20px); margin-bottom: 1.5vw; }
    .template-leisgold .highlight-links { font-size: clamp(25px, 2.604167vw, 50px); line-height: 1.2; }
    .template-leisgold .home-catalog { padding-bottom: 4.3vw; }
    .template-leisgold .home-catalog .catalog-filters { margin: 2.95833vw auto 3.738vw; }
    .template-leisgold .purpose-tabs { margin-bottom: 1.627vw; gap: .75625vw; }
    .template-leisgold .purpose-tabs .pill { min-width: 10.38958vw; }
    .template-leisgold .purpose-tabs .pill, .template-leisgold .lifestyle .pill {
        height: 1.76094vw;
        min-height: 24px;
        font-size: clamp(10px, .78125vw, 15px);
        padding: 0 .625vw;
    }
    .template-leisgold .lifestyle-filters { gap: 1.64vw; margin-bottom: 1.8276vw; }
    .template-leisgold .lifestyle { gap: .97vw; }
    .template-leisgold .lifestyle img, .template-leisgold .lifestyle svg { width: 3.90625vw; height: 2.66vw; min-height: 30px; }
    .template-leisgold .search-box { width: 28.97344vw; max-width: 556.29px; min-width: 350px; height: 1.647vw; min-height: 26px; }
    .template-leisgold .search-box input { font-size: clamp(9px, .78125vw, 15px); padding: 0 1vw; }
    .template-leisgold .search-box button { font-size: 20px; line-height: 1; }
    .template-leisgold .property-grid { gap: 1.9677vw; }
    .template-leisgold .property-card { aspect-ratio: 841.11 / 415.3; }
    .template-leisgold .home-catalog .center { margin-top: 5.20833vw; }
    .template-leisgold .appraisal-section {
        position: relative;
        left: 1.822917vw;
        grid-template-columns: 1fr 1fr;
        gap: 1.302083vw;
        padding: 1.822917vw 0 0;
        margin-bottom: 4.3vw;
    }
    .template-leisgold .appraisal-media { aspect-ratio: 847.5 / 520; min-height: 0; }
    .template-leisgold .appraisal-copy h2 { font-size: clamp(22px, 2.291667vw, 44px); margin-bottom: 2.4vw; }
    .template-leisgold .appraisal-copy p { font-size: clamp(13px, 1.041667vw, 20px); line-height: 1.75; padding-top: 24px; margin-bottom: 1.88vw; max-width: 730px; }
    .template-leisgold .appraisal-copy > strong { font-size: clamp(10px, 1.041667vw, 20px); margin-bottom: 1.65vw; }
    .template-leisgold .instagram-section { width: 62.976%; max-width: 1209.14px; padding: 0 0 5.93vw; }
    .template-leisgold .instagram-section h2 { font-size: clamp(12px, 1.041667vw, 20px); line-height: 1.25; margin-bottom: 3.5vw; }
    .template-leisgold .instagram-track { gap: 2.1vw; }
    .template-leisgold .instagram-card { flex-basis: calc((100% - 4.2vw) / 3); }
    /* The about board uses a portrait split and a fixed text starting line. */
    .template-leisgold .about-page { margin-top: .404167vw; grid-template-columns: 49.84375% 50.15625%; }
    .template-leisgold .about-media { aspect-ratio: 957 / 1112.37; }
    .template-leisgold .about-copy { justify-content: flex-start; padding: 15.1325vw 26.1% 6vw; }
    .template-leisgold .about-copy .eyebrow { font-size: clamp(12px, 1.041667vw, 20px); margin-bottom: 1.96875vw; }
    .template-leisgold .about-intro { font-size: clamp(23px, 1.5625vw, 30px); line-height: 1.333333; margin-bottom: 0; }
    .template-leisgold .about-copy .prose { margin-top: 3.125vw; line-height: 1.5; }
    .template-leisgold .about-media:has(video) { aspect-ratio: 9 / 16; }
}

@media (min-width: 1101px) {
    .template-leisgold .newsletter { width: 24.384%; flex-shrink: 0; }
.template-leisgold .footer-top { gap: 12%; }
    .template-leisgold .footer-links { font-size: clamp(11px, .78125vw, 15px); }
}

@media (max-width: 1100px) and (min-width: 761px) {
    .template-leisgold .appraisal-section { left: 0; padding-bottom: 25px; gap: 4%; }
    .template-leisgold .appraisal-copy p { margin-top: 20px; }
    .template-leisgold .appraisal-copy > strong { font-size: 10px; }
    .template-leisgold .appraisal-media { aspect-ratio: auto; }
    .template-leisgold .instagram-section { width: 78%; }
    .menu-content .menu-primary { font-size: 20px; }
    .template-leisgold .about-copy { padding: 60px 12%; }
}

@media (max-width: 760px) {
    :root, .template-leisgold, .template-essencial { --header-height: 86px; --compact-header-height: 86px; }
    .soft-word { max-width: 100%; overflow-wrap: anywhere; }
    .menu-content nav { gap: 20px 25px; }
    .menu-dialog { padding-bottom: 30px; }
    .menu-top, .menu-content { width: 88%; }
    .menu-top .brand { width: 200px; max-width: 75%; transform: none; }
    .menu-top > button { transform: none; }
    .menu-content { grid-template-columns: 1fr; gap: 30px; padding: 25px 0 35px; }
    .menu-content > p { max-width: 100%; font-size: 36px; }
    .menu-content .menu-primary { padding: 0; font-size: 16px; grid-template-columns: 1fr 1fr; gap: 20px; }
    .menu-column { gap: 13px; }
    .menu-column > a:first-child { margin-bottom: 12px; }
    .menu-content .menu-secondary { grid-column: 1; font-size: 11px; }
}

@media (hover: none) {
    .template-leisgold .property-card { aspect-ratio: auto; }
    .soft-italic:hover:not(:focus-visible) .soft-word > span { opacity: 1; }
    .soft-italic:hover:not(:focus-visible) .soft-word > em { opacity: 0; }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { transition: none !important; animation: none !important; }
    .property-card:is(:hover, :focus-within) .card-image img { transform: none; }
}
/* September 2026 internal-page reference. */
.site-icon{width:26px;height:26px;flex-shrink:0;display:inline-block;vertical-align:middle}
.js .intro-screen{animation-delay:2.2s}
.template-leisgold .hero h1,.template-leisgold .intro-screen p{font-weight:300;font-synthesis:none}
.template-leisgold .hero h1 em,.template-leisgold .intro-screen em{font-weight:500}
.main-nav>.nav-item>a{position:relative;display:block}
.main-nav>.nav-item>a::after{content:'';position:absolute;left:0;bottom:calc(-1 * (var(--header-height) / 2 - 2vw - .75em));width:100%;height:3px;background:var(--rust);transform:scaleX(0);transform-origin:center;transition:transform .2s}
.main-nav>.nav-item:is(:hover,:focus-within)>a::after{transform:scaleX(1)}
.subnav{--subnav-divider-offset:calc(var(--header-height)/2 - 2vw - .75em + 1px);left:50%;right:auto;min-width:220px;top:100%;padding:clamp(24px,2vw,38px) 16px 12px;text-align:center;font-size:clamp(12px,.95vw,18px);transform:translate(-50%,-5px);background:linear-gradient(to bottom,transparent 0 var(--subnav-divider-offset),var(--paper) var(--subnav-divider-offset) 100%)}
.template-leisgold .subnav{background:linear-gradient(to bottom,transparent 0 var(--subnav-divider-offset),#faf5ef var(--subnav-divider-offset) 100%)}
.nav-item:is(:hover,:focus-within) .subnav{transform:translate(-50%,0)}
.template-leisgold .whatsapp-float{width:clamp(40px,3.5vw,54px);height:clamp(40px,3.5vw,54px);border-radius:50%;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.46);box-shadow:inset 0 0 12px rgba(255,255,255,.1),0 3px 10px rgba(0,0,0,.06);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);color:rgba(255,255,255,.95);transition:background-color 250ms ease,box-shadow 250ms ease}
.template-leisgold .whatsapp-float.is-over-light{background:rgba(94,90,85,.22);border-color:rgba(255,255,255,.58);box-shadow:inset 0 0 10px rgba(255,255,255,.12),0 2px 7px rgba(0,0,0,.07)}
.template-leisgold .whatsapp-float svg{width:74%;height:74%;max-width:none;filter:none;stroke-width:1.45;transform:translate(-1px,-1px)}
.template-leisgold .menu-content{min-height:0;padding:3vw 0;align-items:center;border-bottom:0}
.template-leisgold .menu-dialog::backdrop{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}
.template-leisgold .menu-content>p{transform:none}
.template-leisgold .menu-content .menu-primary{padding:0;align-items:start;font-size:clamp(18px,1.7vw,33px)}
.template-leisgold .menu-column>a:first-child{margin-bottom:0}
.home-highlights{text-align:center;padding:0 0 30px}
.home-highlights>.eyebrow{margin:0 0 24px;text-decoration:none}
.home-highlights .hero-image{display:block}
.highlight-slides{display:grid;overflow:hidden;touch-action:pan-y pinch-zoom}
.highlight-slides>[data-highlight-slide]{grid-area:1/1;min-width:0;opacity:1;transform:translateX(0);transition:opacity .55s var(--ease-soft),transform .65s var(--ease-out);will-change:opacity,transform}
.highlight-slides>[data-highlight-slide].is-entering-next{opacity:0;transform:translateX(18px)}
.highlight-slides>[data-highlight-slide].is-entering-previous{opacity:0;transform:translateX(-18px)}
.highlight-slides>[data-highlight-slide].is-leaving-next{opacity:0;transform:translateX(-12px);pointer-events:none}
.highlight-slides>[data-highlight-slide].is-leaving-previous{opacity:0;transform:translateX(12px);pointer-events:none}
.home-highlights h3{font:400 clamp(26px,2.6vw,50px)/1.25 var(--serif);margin:26px auto 15px;max-width:85%}
.highlight-controls{display:flex;justify-content:center;align-items:center;gap:14px}
.highlight-controls button{display:grid;place-items:center;width:30px;height:30px;padding:0;border:0;background:none;font:300 22px/30px Arial,sans-serif}
.highlight-divider{width:clamp(110px,13vw,250px);height:1px;background:currentColor}
.home-highlights [hidden]{display:none!important}
.catalog-filters .search-box[hidden]{display:none!important}
@media (prefers-reduced-motion:reduce){.highlight-slides>[data-highlight-slide]{transition:none;transform:none}}
.property-card,.template-leisgold .property-card{aspect-ratio:auto;background:none;border-radius:0;overflow:visible;min-width:0}
.card-visual{position:relative;overflow:hidden;border-radius:22px;aspect-ratio:1.62;background:var(--paper)}
.card-visual .card-image{display:block;height:100%}
.card-visual>.favorite{position:absolute;right:18px;top:16px;z-index:2;border:0;background:var(--paper);color:var(--rust);width:42px;height:28px;border-radius:30px}
.card-details{padding:16px 20px;z-index:1;background:var(--paper)}
.card-title{align-items:center;border-bottom:1px solid var(--rust);padding-bottom:10px;margin-bottom:12px}
.card-specs{flex-wrap:wrap;gap:10px}
.card-areas{display:flex;gap:24px;margin-left:auto}
.card-area{display:flex;flex-direction:column;gap:2px;align-items:center;font-size:10px;line-height:1.3;letter-spacing:.06em;text-align:center;margin-left:0;white-space:nowrap}
.card-area strong{font-size:16px;font-weight:700}
.card-spec .site-icon{width:23px;height:23px}
.card-caption{display:block;padding-top:17px}
.card-caption>div{display:flex;justify-content:space-between;gap:12px;text-transform:uppercase;font-size:11px;letter-spacing:.08em;font-weight:600}
.card-caption h3{font:400 clamp(23px,1.8vw,34px)/1.2 var(--serif);margin:8px 0 0}
.template-leisgold .catalog-page>.property-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:36px 28px}
.template-leisgold .catalog-page>.property-grid>.property-card{grid-column:span 3}
.template-leisgold .catalog-page>.property-grid>.property-card:nth-child(5n+3),.template-leisgold .catalog-page>.property-grid>.property-card:nth-child(5n+4),.template-leisgold .catalog-page>.property-grid>.property-card:nth-child(5n+5){grid-column:span 2}
.template-leisgold .footer-links{display:flex;flex-wrap:wrap;gap:22px 35px;align-items:center}
.template-leisgold .footer-links>a::before{display:none}
.footer-navigation{flex:1;min-width:0}
.footer-utility{display:flex;align-items:center;flex-wrap:wrap;gap:10px 24px;margin-top:14px}
.footer-social{font-size:11px}
.footer-social a{display:inline-flex;align-items:center;gap:10px}
.footer-social .site-icon{width:19px;height:19px}
.footer-legal{opacity:.72;font-size:11px;padding-top:0}
.prose .text-link{text-decoration:underline;text-underline-offset:3px}
.site-footer{padding-top:38px;padding-bottom:18px}
.footer-top{align-items:flex-start;padding-bottom:26px}
.footer-bottom{padding-top:22px}
.filter-panel>button[data-close-filters]{display:none}
.js .filter-panel{display:none}
.filters-dialog{position:fixed;inset:0 0 0 auto;width:min(520px,95vw);max-width:95vw;height:100dvh;max-height:100dvh;margin:0;padding:36px;background:var(--paper);color:var(--rust);border-radius:24px 0 0 24px;overflow-y:auto;text-align:left}
.js .filters-dialog .filter-panel{display:block}
.filters-dialog .filter-panel>button[data-close-filters]{display:block;position:absolute;right:22px;top:14px;background:none;border:0;font-size:28px}
.filters-dialog h2{font-size:30px;margin:18px 0 28px}
.filters-dialog .filter-fields{display:grid;grid-template-columns:1fr 1fr;gap:22px 16px}
.filters-dialog .filter-fields label{font-size:12px;text-transform:uppercase;display:flex;flex-direction:column;gap:10px}
.filters-dialog .filter-fields select,.filters-dialog .filter-fields input{width:100%;padding:10px;border:1px solid var(--rust);background:none;border-radius:20px;color:inherit;min-width:0}
.filters-dialog .clear-filters{margin:25px 0}
.property-cover{position:relative;margin-top:14px;height:38vw;max-height:760px;min-height:280px}
.property-cover>a,.property-cover img{display:block;width:100%;height:100%;object-fit:cover}
.property-cover>button{position:absolute;bottom:25px;right:13%;background:var(--paper);color:var(--ink);border:0}
.template-leisgold .property-editorial{width:78.5%;max-width:1510px;padding-top:40px}
.property-toolbar{display:flex;gap:12px;align-items:center;margin-bottom:45px;flex-wrap:wrap}
.property-tags{display:flex;gap:12px;margin-right:8%;flex-wrap:wrap}
.property-tags span{border:1px solid var(--ink);border-radius:30px;padding:4px 14px;font:500 11px var(--sans);text-transform:uppercase;letter-spacing:.05em}
.property-toolbar .pill,.property-toolbar .favorite{color:var(--ink);border-color:var(--ink);width:38px;height:28px;padding:3px;border-radius:30px}
.property-toolbar .site-icon{width:18px;height:18px}
.property-editorial .property-columns{grid-template-columns:minmax(0,1.3fr) minmax(0,.85fr);gap:17%}
.property-editorial h1{font:400 clamp(27px,2vw,40px)/1.25 var(--serif);margin-bottom:15px}
.property-location{font-size:11px;text-transform:uppercase;letter-spacing:.07em;margin-bottom:35px}
.property-location strong{margin-right:25px}
.property-copy .prose{font-size:15px;line-height:1.85}
.property-editorial .property-contact{border:0;border-left:1px solid var(--lime);border-radius:0;padding:0 0 0 35px;align-self:start;color:var(--ink)}
.property-editorial .property-prices{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.property-editorial .property-prices>div{display:flex;flex-direction:column;gap:4px;margin:0}
.property-prices .price-sale_price,.property-prices .price-rent_price{grid-column:1/-1}
.property-editorial .property-prices span{font-size:11px;text-transform:uppercase;letter-spacing:.08em}
.property-editorial .property-prices strong{font-size:21px;letter-spacing:.07em}
.property-editorial .price-condominium_fee strong,.property-editorial .price-iptu strong{font-size:13px}
.property-prices small{font-size:10px;text-transform:uppercase}
.property-enquiry-actions{display:flex;flex-direction:column;align-items:start;gap:15px;margin:24px 0}
.property-enquiry summary{cursor:pointer;font-size:14px}
.property-enquiry form{margin-top:24px}
.property-editorial .property-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 12px;margin:35px 0 0;padding:0;border:0}
.property-editorial .property-facts>div{display:grid;grid-template-columns:auto 1fr;gap:0 7px;align-items:center}
.property-editorial .property-facts .site-icon{grid-row:1/3}
.property-editorial .property-facts strong{font:600 17px var(--sans)}
.property-editorial .property-facts span{font-size:11px;color:var(--ink)}
.property-editorial .property-facts>div:nth-last-child(-n+2){grid-column:span 2}
.property-editorial .property-facts>.fact-bedrooms{grid-column:span 2}
.property-editorial .property-facts .site-icon-color{color:#004f0d}
.property-features{border-block:1px solid var(--lime);margin-top:35px;padding:25px 0}
.property-features h2,.property-editorial .related>h2{font:700 14px var(--sans);text-transform:uppercase;letter-spacing:.08em;margin:0 0 30px}
.property-features .features{columns:4;font-size:11px;text-transform:uppercase;line-height:2}
.property-editorial .related{padding-top:45px}
.property-editorial .related .property-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.property-editorial .related .property-card:nth-child(n+4){display:none}
.property-bottom-contact{margin-top:60px;border-top:1px solid var(--lime);padding-top:45px;text-align:center}
.property-photo-grid{inset:0;width:100%;height:100dvh;max-width:none;max-height:none;margin:0;background:var(--paper);padding:30px 5%;overflow:auto}
.photo-grid-toolbar{display:flex;justify-content:space-between;margin-bottom:25px}
.photo-grid-toolbar>button{background:none;border:0;color:var(--ink);cursor:pointer}
.photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.photo-grid>a:nth-child(3n+1){grid-column:1/-1}
.photo-grid img{width:100%;height:100%;max-height:700px;object-fit:cover;border-radius:20px}
@media(hover:none){.card-details{position:static;transform:none}.card-visual{aspect-ratio:auto}.card-visual .card-image{height:250px}}
@media(max-width:1100px){.property-editorial .property-columns{gap:6%}.card-specs{gap:6px}.card-details{padding:10px}.card-title{flex-wrap:wrap}.card-area{margin-left:0}.card-caption>div{font-size:9px}}
@media(max-width:760px){.template-leisgold .catalog-page>.property-grid,.property-editorial .related .property-grid{grid-template-columns:1fr}.template-leisgold .catalog-page>.property-grid>.property-card{grid-column:1!important}.card-visual{aspect-ratio:auto}.card-details{position:static;transform:none}.card-visual .card-image{height:240px}.card-caption h3{font-size:27px}.property-cover{height:65vw}.template-leisgold .property-editorial{width:90%}.property-editorial .property-columns{grid-template-columns:1fr;gap:35px}.property-editorial .property-contact{border-left:0;border-top:1px solid var(--lime);padding:25px 0 0}.property-features .features{columns:2}.property-toolbar{margin-bottom:25px}.property-editorial .related .property-card:nth-child(n+4){display:block}.photo-grid{gap:12px}.photo-grid>a{grid-column:1/-1}.filters-dialog{padding:30px 22px}.template-leisgold .menu-content{padding:25px 0;gap:30px}.home-highlights h3{font-size:30px}.property-facts .site-icon{width:23px}}
.contact-reference{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding:85px 0 110px;color:var(--rust)}
.contact-reference h1{font:500 normal clamp(28px,2.1vw,40px)/1.2 var(--serif);margin-bottom:45px}
.contact-reference h1 em{font-style:italic}
.contact-reference>div>a{display:flex;align-items:center;gap:10px;font-size:13px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px}
.contact-reference>div>a .site-icon{width:1.2em;height:1.2em;flex-shrink:0;color:inherit}
.contact-reference .contact-form{max-width:none;text-transform:uppercase;letter-spacing:.07em;font-size:11px}
.contact-reference .contact-form>label{gap:10px;margin-bottom:10px}
.contact-reference .contact-form input,.contact-reference .contact-form textarea{font-size:13px}
.service-reference{display:grid;grid-template-columns:1fr 1.4fr;gap:55px 7%;padding:80px 0}
.service-reference h1{font:700 clamp(26px,2.5vw,45px)/1.2 var(--sans);text-transform:uppercase;letter-spacing:.07em}
.service-conversation{display:block;font:400 clamp(36px,4.166667vw,80px)/1.2 var(--serif);margin-top:30px}
.service-conversation:hover{font-style:italic}
#service-contact{grid-column:2;scroll-margin-top:150px}
@media(max-width:760px){.contact-reference,.service-reference{grid-template-columns:1fr;padding:45px 0 60px;gap:45px}.contact-reference h1{font-size:30px}.contact-reference>div>a{font-size:11px;overflow-wrap:anywhere}#service-contact{grid-column:1}.service-conversation{font-size:36px}}
.property-editorial .related .related-track{display:flex;gap:28px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.property-editorial .related .related-track>.property-card{display:block;flex:0 0 calc((100% - 56px)/3);scroll-snap-align:start}
@media(max-width:760px){.property-editorial .related .related-track>.property-card{flex-basis:100%}}

/* September 21 visual revision: direct navigation, supplied icon set and internal pages. */
.template-leisgold .main-nav{gap:clamp(9px,1.05vw,20px);font-size:clamp(12px,.95vw,18px);justify-content:flex-end}
.template-leisgold .main-nav>.nav-item:last-of-type{display:block}
.header-instagram{display:grid!important;place-items:center;flex:0 0 auto;padding:4px}
.header-instagram img{display:block;width:clamp(19px,1.25vw,24px);height:auto}
.template-leisgold .header-inner>.brand{width:15.5%}
.template-leisgold .main-nav a:hover,.template-leisgold .main-nav a:focus-visible{color:var(--rust)}
.template-leisgold .subnav a:hover,.template-leisgold .subnav a:focus-visible{font-weight:700}

.js .intro-screen{animation:intro-screen-out .45s 3s both}
.intro-screen p{display:grid;grid-template-columns:1fr;justify-items:center}
.intro-screen .intro-regular,.intro-screen .intro-italic{grid-area:1/1;display:block}
.intro-screen .intro-regular{font-style:normal;animation:intro-regular 3s var(--ease-soft) both}
.intro-screen .intro-italic{font-style:italic;opacity:0;animation:intro-italic 3s var(--ease-soft) both}
.intro-screen .intro-subtitle{display:block}
@keyframes intro-regular{0%,18%{opacity:1}82%,100%{opacity:0}}
@keyframes intro-italic{0%,18%{opacity:0}82%,100%{opacity:1}}
@keyframes intro-screen-out{to{opacity:0;visibility:hidden}}

.home-highlights>.eyebrow{margin:0 0 24px;text-decoration:none}
.highlight-title-row{display:flex;align-items:center;justify-content:center;gap:clamp(14px,1.7vw,32px);margin:26px auto 15px;padding-inline:12px}
.highlight-title-row h3{margin:0;max-width:min(75vw,1100px)}
.highlight-title-row .carousel-arrow,.carousel-controls .carousel-arrow,.carousel-controls .carousel-arrow:last-child{display:grid;place-items:center;flex:0 0 auto;width:32px;height:32px;padding:0;border:1px solid var(--ink);border-radius:50%;background:transparent;color:var(--ink);transition:background .2s,color .2s,border-color .2s,transform .2s}
.carousel-arrow span{display:block;width:8px;height:8px;border-top:1px solid currentColor;border-right:1px solid currentColor}
.carousel-arrow.arrow-left span{transform:rotate(-135deg);margin-left:3px}
.carousel-arrow.arrow-right span{transform:rotate(45deg);margin-right:3px}
.highlight-title-row .carousel-arrow:hover,.highlight-title-row .carousel-arrow:focus-visible,.carousel-controls .carousel-arrow:hover,.carousel-controls .carousel-arrow:focus-visible,.carousel-controls .carousel-arrow:last-child:hover,.carousel-controls .carousel-arrow:last-child:focus-visible{background:var(--ink);border-color:var(--ink);color:var(--paper);transform:scale(1.06)}
.home-highlights h3{font-size:clamp(24px,2.5vw,48px)}
.instagram-section h2 a{display:inline-flex;align-items:center;justify-content:center;gap:8px}
.instagram-section h2 a img{display:block;flex:0 0 auto;width:20px;height:auto}
.instagram-card{aspect-ratio:auto;border-radius:0;overflow:visible}
.instagram-video,.instagram-card .instagram-image{position:relative;display:block;width:100%;height:auto;aspect-ratio:9/16;border-radius:28px;overflow:hidden;background:var(--paper)}
.instagram-video video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit}
.instagram-blocked{display:none}
body[data-external-blocked="1"] .instagram-video video{display:none}
body[data-external-blocked="1"] .instagram-blocked{display:flex;align-items:center;justify-content:center;height:100%;padding:24px;font-size:12px;background:color-mix(in srgb,var(--paper) 90%,var(--ink))}
.instagram-card .instagram-post-link{display:flex;align-items:center;justify-content:center;height:40px;background:var(--paper);font-size:11px}
.instagram-status{font-size:12px;margin:12px 0 0;min-height:18px}
.instagram-card .instagram-caption{padding:16px;background:rgba(0,0,0,.85);color:#fff}
.instagram-caption-text{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;line-height:1.5}
.template-leisgold .newsletter-input input:focus,.template-leisgold .newsletter-input input:focus-visible{outline:none;box-shadow:none}
.site-icon-color{display:inline-block;width:25px;height:25px;flex-shrink:0;background-color:currentColor;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}
[data-privacy-settings][hidden]{display:none}
.home-filter-empty{text-align:center;padding:35px 15px;font-family:var(--serif);font-size:22px}
.home-filter-empty a{text-decoration:underline;text-underline-offset:3px}

.favorite{font-size:0;overflow:hidden}
.favorite img{display:block;width:100%;height:100%;object-fit:contain}
.favorite .favorite-on{display:none}
.favorite[aria-pressed="true"] .favorite-off{display:none}
.favorite[aria-pressed="true"] .favorite-on{display:block}
.card-visual>.favorite{width:58px;height:33px;padding:0;background:none;border-radius:99px;right:17px;top:14px}
.card-visual>.favorite:hover{background:none;transform:scale(1.05)}
.icon-button{border:0;background:none;padding:0;line-height:0}
.property-toolbar .property-tags span,.property-toolbar .icon-button{height:28px;min-width:78px;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;line-height:1.25}
.property-toolbar .icon-button{width:78px;padding:3px 14px;border:1px solid #004f0d;border-radius:99px;background:transparent;color:#004f0d;flex-shrink:0;transition:background .2s,color .2s}
.property-toolbar .icon-button img{display:block;width:100%;height:100%;object-fit:contain}
.property-toolbar .icon-button .site-icon{width:20px;height:20px}
.property-toolbar .icon-button:hover,.property-toolbar .icon-button:focus-visible,.property-toolbar .favorite[aria-pressed="true"]{background:#004f0d;border-color:#004f0d;color:var(--paper);transform:none}
.property-toolbar .favorite[aria-pressed="true"] .favorite-heart{fill:currentColor}
.property-video-button{color:#004f0d;border-color:#004f0d}
.property-video-button:hover,.property-video-button:focus-visible{background:#004f0d;color:var(--paper)}
.property-video-dialog{width:min(1000px,92vw);max-width:92vw;max-height:90dvh;padding:48px 16px 16px;border-radius:16px;background:var(--paper);color:#004f0d}
.property-video-dialog::backdrop{background:#000b}
.property-video-close{position:absolute;top:7px;right:14px;border:0;background:none;color:inherit;font-size:30px;line-height:1;padding:4px}
.property-video-media{width:100%;background:#000}
.property-video-media video,.property-video-media iframe{width:100%;height:auto;max-height:calc(90dvh - 64px);border:0;object-fit:contain}
.property-video-media .external-media{aspect-ratio:16/9;min-height:0;background:#000}
.property-video-media .external-media iframe{height:100%;min-height:0}
.property-cover>.gallery-button{display:inline-flex;gap:8px;background:var(--paper);color:#004f0d;border:1px solid transparent;line-height:1.25}
.gallery-button .site-icon{width:18px;height:18px;flex:0 0 18px}
.property-cover>.gallery-button:hover,.property-cover>.gallery-button:focus-visible{background:#004f0d;color:var(--paper);border-color:#004f0d}
.property-cover>.gallery-button:focus{outline:none}
.property-cover>.gallery-button:focus-visible{outline:2px solid #004f0d;outline-offset:4px}
.site-icon{object-fit:contain}

.pill:not(:disabled):hover,.pill:not(:disabled):focus-visible{transform:translateY(-1px);box-shadow:0 4px 12px color-mix(in srgb,var(--rust) 18%,transparent)}
.pill.lime:not(:disabled):hover,.pill.lime:not(:disabled):focus-visible{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.newsletter-input button{width:36px;height:36px;padding:0;background:none;color:inherit;overflow:visible}
.newsletter-input button img{width:36px;height:36px;max-width:none;transition:transform .2s var(--ease-out)}
.newsletter-input button:hover img{transform:translateX(2px) scale(1.05)}
.footer-social img{width:20px;height:auto}
.site-footer{font-size:clamp(9px,.72vw,14px)}
.template-leisgold .footer-links{font-size:clamp(9px,.66vw,13px)}
.footer-bottom{font-size:clamp(8px,.72vw,14px)}
.footer-bottom>strong{font-size:clamp(8px,.68vw,13px);font-weight:500}
.design-credit{font-size:9px}
.consent input[type="checkbox"]{-webkit-appearance:none;appearance:none;width:13px;height:13px;border:1px solid currentColor;border-radius:2px;background:var(--paper);display:inline-grid;place-content:center;margin:0 5px 0 0}
.consent input[type="checkbox"]::before{content:"";width:7px;height:7px;transform:scale(0);background:currentColor;transition:transform .12s}
.consent input[type="checkbox"]:checked::before{transform:scale(1)}
.newsletter .consent input[type="checkbox"]{background:var(--blue)}

.template-leisgold .whatsapp-float{color:var(--ink)}
.template-leisgold .whatsapp-float img{display:block;width:74%;height:74%;object-fit:contain;max-width:none;transform:none}
.template-leisgold .whatsapp-float:hover{transform:scale(1.06)}

.internal-page-title{font-family:var(--sans);font-size:clamp(12px,1vw,19px)!important;font-weight:700;letter-spacing:.09em;margin-bottom:38px}
.content-page.has-form .page-columns{align-items:start}
.content-page.has-form .contact-form{max-width:none;padding-top:0}
.page-copy>header{margin-bottom:38px}
.page-copy .page-intro{margin-bottom:0}

.service-reference{grid-template-columns:minmax(240px,.72fr) minmax(0,1.55fr);align-items:start;padding:85px 0 105px}
.service-reference h1{font-size:clamp(17px,1.25vw,24px);margin-bottom:20px}
.service-conversation{display:inline-flex;margin-top:0;font:600 11px/1 var(--sans);padding:7px 16px}
.service-content>.page-intro{font-size:clamp(25px,2vw,38px);margin-bottom:18px}
.service-content>.prose{font-size:14px;max-width:780px;margin-bottom:35px}
.service-steps{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.service-steps article{border:1px solid color-mix(in srgb,var(--ink) 35%,transparent);border-radius:16px;padding:25px 28px;min-height:155px}
.service-steps h2{font:700 12px/1.35 var(--sans);text-transform:uppercase;letter-spacing:.06em;margin-bottom:14px}
.service-steps p{font-size:12px;line-height:1.6;margin:0}
.service-reference--administracao .service-steps article{border-color:color-mix(in srgb,var(--rust) 42%,transparent)}
.service-contact-dialog{width:min(1050px,92vw);max-width:92vw;max-height:90dvh;padding:clamp(28px,4vw,65px);background:var(--paper);color:var(--ink);border-radius:24px;overflow:auto;grid-template-columns:.85fr 1.15fr;gap:8%}
.service-contact-dialog[open]{display:grid}
.service-contact-dialog::backdrop{background:#1c291dcc;backdrop-filter:blur(5px)}
.service-contact-dialog h2{font:italic 500 clamp(32px,4vw,64px)/1.1 var(--serif);margin:20px 0}
.service-contact-dialog .contact-form{max-width:none}
.service-dialog-close{position:absolute;right:22px;top:16px;border:0;background:none;font-size:30px}

.photo-grid-toolbar>button{display:inline-flex;align-items:center;gap:8px}
.photo-grid-toolbar>button>img{width:auto;height:32px}
.gallery-dialog button img{width:32px;height:32px}
.photo-grid-toolbar [data-close-photo-grid]{padding:0;color:#004f0d}
.gallery-back-icon{display:grid;place-items:center;width:32px;height:32px;border:1px solid currentColor;border-radius:50%;transition:background .2s,color .2s}
.gallery-back-icon svg{width:18px;height:18px;transition:transform .2s}
.photo-grid-toolbar [data-close-photo-grid]:hover .gallery-back-icon,.photo-grid-toolbar [data-close-photo-grid]:focus-visible .gallery-back-icon{background:#004f0d;color:var(--paper)}
.photo-grid-toolbar [data-close-photo-grid]:hover svg{transform:translateX(-2px)}
.photo-grid-toolbar .icon-button{display:inline-flex;justify-content:center;align-items:center;width:58px;height:32px;padding:5px 16px;border:1px solid #004f0d;border-radius:99px;color:#004f0d;transition:background .2s,color .2s}
.photo-grid-toolbar .icon-button .site-icon{width:20px;height:20px}
.photo-grid-toolbar .icon-button:hover,.photo-grid-toolbar .icon-button:focus-visible{background:#004f0d;color:var(--paper)}
.gallery-dialog[open]{display:grid;grid-template-columns:40px minmax(0,1fr) 40px;grid-template-rows:minmax(0,1fr);gap:16px;padding:60px 20px}
.gallery-dialog>img{grid-column:2;grid-row:1;width:100%;height:100%;min-width:0;min-height:0;max-width:100%;max-height:calc(100dvh - 120px);object-fit:contain}
.gallery-dialog [data-gallery-prev],.gallery-dialog [data-gallery-next]{display:grid;place-items:center;grid-row:1;width:40px;height:40px;padding:8px;border:1px solid currentColor;border-radius:50%;align-self:center;transition:background .2s,color .2s}
.gallery-dialog [data-gallery-prev]{grid-column:1}
.gallery-dialog [data-gallery-next]{grid-column:3}
.gallery-dialog button svg{width:22px;height:22px}
.gallery-dialog [data-gallery-prev]:hover,.gallery-dialog [data-gallery-next]:hover{background:var(--paper);color:#004f0d}
@media(max-width:760px){.gallery-dialog[open]{grid-template-columns:30px minmax(0,1fr) 30px;gap:6px;padding:55px 8px}.gallery-dialog>img{max-height:calc(100dvh - 110px)}.gallery-dialog [data-gallery-prev],.gallery-dialog [data-gallery-next]{width:30px;height:30px;padding:5px}}

@media(min-width:761px){
    .template-leisgold .home-highlights .hero-image{height:42vw;max-height:820px}
}
@media(max-width:1100px) and (min-width:761px){
    .template-leisgold .main-nav{gap:8px;font-size:12px}
    .template-leisgold .header-inner>.brand{width:14%}
}
@media(max-width:760px){
    :root,.template-leisgold{--header-height:155px;--compact-header-height:155px}
    .template-leisgold .header-inner{width:100%;padding:12px 5% 9px;display:grid;grid-template-columns:1fr;align-content:center;gap:9px}
    .template-leisgold .header-inner>.brand{width:175px;max-width:70%}
    .template-leisgold .brand img{width:175px}
    .template-leisgold .main-nav{display:grid;grid-template-columns:repeat(4,max-content);justify-content:start;overflow:visible;max-width:100%;padding-bottom:5px;gap:8px 15px;font-size:9px}
    .template-leisgold .main-nav>.nav-item,.template-leisgold .main-nav>.nav-item:last-child{display:block;flex:0 0 auto}
    .template-leisgold .subnav{display:none}
    .template-leisgold .hero{height:390px}
    .template-leisgold .home-highlights .hero-image{height:360px}
    .highlight-title-row{gap:12px;padding-inline:5px}
    .home-highlights h3{font-size:28px}
    .service-reference{grid-template-columns:1fr;padding:50px 0 65px;gap:35px}
    .service-steps{grid-template-columns:1fr}
    .service-contact-dialog[open]{display:grid;grid-template-columns:1fr;gap:30px}
    .content-page.has-form .page-columns{gap:55px}
}
@media(max-width:420px){
    :root,.template-leisgold{--header-height:170px;--compact-header-height:170px}
    .template-leisgold .main-nav{grid-template-columns:repeat(3,max-content);gap:8px 13px}
}

@media(prefers-reduced-motion:reduce){
    .intro-screen .intro-regular{opacity:0;animation:none}
    .intro-screen .intro-italic{opacity:1;animation:none}
}

.instagram-video-play{position:absolute;z-index:1;left:50%;top:50%;transform:translate(-50%,-50%);border:1px solid #fff;border-radius:99px;padding:12px 18px;background:#004f0d;color:#fff;font-size:13px;max-width:90%}
.instagram-video-play[hidden]{display:none}
.instagram-video-poster{display:none;width:100%;height:100%;object-fit:cover}
.instagram-video.has-video-error video{visibility:hidden}
.instagram-video.has-video-error .instagram-video-poster{display:block}
body[data-external-blocked="1"] .instagram-video-play,body[data-external-blocked="1"] .instagram-video-poster{display:none}
