/* Marcelo's Villas — A quiet-luxury visual system */
:root{--dark:#11231e;--forest:#1a3028;--forest-2:#203b30;--gold:#bf9c62;--gold-bright:#e5c991;--paper:#faf9f5;--cream:#f1eee7;--sand:#e4ddd2;--text:#24312b;--muted:#72776f;--line:#e3ded5;--white:#fff;--header:90px;--ease:cubic-bezier(.23,1,.32,1);--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{margin:0;background:var(--paper);color:var(--text);font-family:var(--sans);font-size:15px;line-height:1.75;-webkit-font-smoothing:antialiased;overflow-x:hidden}body.menu-open{overflow:hidden}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}::selection{background:var(--gold-bright);color:var(--dark)}:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.svg-sprite{position:absolute;width:0;height:0;overflow:hidden}.icon{display:inline-block;width:20px;height:20px;flex:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;fill:none;vertical-align:middle}.container{width:min(1210px,calc(100% - 88px));margin-inline:auto}.container-wide{width:min(1450px,calc(100% - 80px));margin-inline:auto}.section{padding:118px 0}.tint{background:var(--cream)}.deep-green{background:var(--dark);color:var(--paper)}.eyebrow{color:#aa8650;display:inline-flex;align-items:center;font-size:11px;font-weight:700;line-height:1.5;letter-spacing:.24em;text-transform:uppercase}.display-title{font-family:var(--serif);font-weight:400;font-size:clamp(38px,4.5vw,68px);letter-spacing:-.045em;line-height:1.21;margin:18px 0 25px;color:var(--dark)}.display-title em{font-weight:400;color:#9b8054;letter-spacing:-.045em}.display-title.light{color:var(--paper)}.display-title.light em{color:#dbc18f}.section-topline{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(38,44,39,.16);padding-bottom:19px;margin-bottom:30px}.dark-section .section-topline{border-color:rgba(255,255,255,.16)}.small-index{font:500 10px var(--sans);letter-spacing:.25em;color:var(--muted)}.split-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:56px}.split-heading>h2,.split-heading>div{flex:1 1 62%}.split-heading>p,.split-heading .section-aside{flex:1 1 31%;max-width:330px;color:var(--muted);margin:0 0 14px}.split-heading .section-aside p{margin:0 0 20px}.center-title{text-align:center;max-width:740px;margin:0 auto 65px}.center-title>p{font-size:16px;color:var(--muted);margin:20px auto 0;max-width:600px}.gold-line{width:86px;height:1px;background:var(--gold);margin-top:25px}.mini-label{font-size:10px;letter-spacing:.18em;font-weight:700;color:#a98a55;text-transform:uppercase}.text-link{display:inline-flex;align-items:center;gap:16px;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid var(--gold);padding-bottom:10px;line-height:1.4}.text-link .icon{width:17px;transition:transform .3s var(--ease)}.text-link:hover .icon{transform:translate(4px,-4px)}
/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:27px;min-height:53px;padding:13px 20px 13px 25px;font-size:11px;letter-spacing:.11em;font-weight:700;text-transform:uppercase;transition:background .3s var(--ease),color .3s var(--ease),border-color .3s var(--ease),transform .3s var(--ease);border:1px solid transparent;white-space:nowrap}.btn:hover{transform:translateY(-3px)}.btn .icon{width:16px;height:16px;transition:transform .3s var(--ease)}.btn:hover .icon{transform:translate(3px,-3px)}.btn-gold{background:var(--gold);border-color:var(--gold);color:var(--dark)}.btn-gold:hover{background:#ddbd84;border-color:#ddbd84}.btn-primary{background:var(--dark);color:var(--paper)}.btn-primary:hover{background:#2b4b3d}.btn-outline{background:transparent;border:1px solid #b8b1a4;color:var(--dark)}.btn-outline:hover{border-color:var(--gold);background:#efe7d7}.btn-ghost{color:#fff;background:transparent;border-color:rgba(255,255,255,.62)}.btn-ghost:hover{background:#fff;color:var(--dark)}.btn-light{background:#f5f1e9;color:var(--dark);border-color:#f5f1e9}.btn-light:hover{background:var(--gold-bright);border-color:var(--gold-bright)}
/* Header */
.header{position:fixed;left:0;right:0;top:0;height:var(--header);z-index:90;background:rgba(250,249,245,.98);border-bottom:1px solid rgba(27,40,33,.09);transition:height .35s var(--ease),box-shadow .35s,background .35s}.header.scrolled{height:76px;background:rgba(250,249,245,.98);box-shadow:0 9px 35px rgba(17,35,30,.085)}.header-inner{height:100%;display:flex;justify-content:space-between;align-items:center;gap:28px}.brand{display:flex;align-items:center;flex:0 0 auto;width:166px;height:76px}.brand img{object-fit:contain;width:165px;height:76px}.nav{display:flex;align-items:center;gap:clamp(14px,1.7vw,29px);margin-left:auto}.nav-link{position:relative;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.095em;white-space:nowrap;color:#39483f;transition:color .25s}.nav-link:after{content:'';position:absolute;left:0;right:100%;bottom:-12px;height:1px;background:var(--gold);transition:right .25s var(--ease)}.nav-link:hover,.nav-link.active{color:#a17d47}.nav-link:hover:after,.nav-link.active:after{right:0}.head-actions{display:flex;align-items:center;gap:22px}.language{display:flex;align-items:center;gap:5px;font-size:11px;color:#b9ae9c}.lang{background:transparent;border:none;font-size:11px;font-weight:700;padding:6px 0;color:#8d918c;transition:color .2s}.lang.active{color:var(--dark)}.header-contact{height:41px;display:flex;align-items:center;gap:18px;background:var(--dark);color:#fff;padding:0 15px 0 20px;font-size:10px;letter-spacing:.09em;font-weight:700;text-transform:uppercase;white-space:nowrap;transition:background .2s}.header-contact:hover{background:var(--forest-2)}.header-contact .icon{width:16px}.menu-btn{display:none;background:transparent;color:var(--dark);border:1px solid #c9c3b6;width:43px;height:43px;align-items:center;justify-content:center}.scroll-progress{position:fixed;z-index:110;height:2px;background:var(--gold);width:0;top:0;left:0;pointer-events:none;transition:width .1s linear}
/* Header image and home hero */
.home-hero{height:min(890px,100svh);min-height:690px;position:relative;background:#1b332d;overflow:hidden;color:#fff;margin-top:var(--header)}.hero-photo{position:absolute;inset:0;background-image:var(--photo),url('img/villa-pool.webp');background-size:cover;background-position:center 54%;animation:heroZoom 20s ease-in-out alternate infinite}.hero-vignette{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,19,17,.87) 0%,rgba(8,24,22,.61) 42%,rgba(7,24,21,.13) 100%),linear-gradient(0deg,rgba(7,22,19,.67),transparent 33%),linear-gradient(180deg,rgba(15,27,23,.23),transparent 26%)}.home-hero-inner{position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;height:calc(100% - 69px);padding:34px 0 26px}.hero-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.26em;display:flex;align-items:center;gap:13px;color:#ead5a6;font-weight:700;margin-bottom:28px}.hero-kicker .icon{width:18px}.home-hero h1{font-family:var(--serif);font-size:clamp(50px,6.45vw,98px);line-height:1.2;font-weight:400;letter-spacing:-.055em;max-width:1000px;margin:0}.home-hero h1 em{font-weight:400;color:#dfc495}.hero-summary{max-width:620px;font-size:16px;line-height:2;color:#eceae3;margin:26px 0 31px}.hero-cta{display:flex;flex-wrap:wrap;gap:11px}.hero-vertical{position:absolute;right:19px;top:50%;z-index:2;transform:translateY(-50%);writing-mode:vertical-rl;font-size:9px;letter-spacing:.28em;color:rgba(255,255,255,.62)}.hero-vertical span{margin:13px 0;color:var(--gold)}.hero-bottom{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:20px;z-index:2;padding:0 max(40px,calc((100vw - 1450px)/2)) 0;min-height:69px;border-top:1px solid rgba(255,255,255,.2);background:rgba(9,22,17,.12);font-size:10px;letter-spacing:.17em;color:#f4f0e8}.hero-bottom-left{display:flex;align-items:center;gap:13px}.hero-star{font-size:22px;color:var(--gold)}.hero-scroll{display:flex;align-items:center;gap:21px;align-self:stretch}.scroll-circle{height:100%;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;border-left:1px solid rgba(255,255,255,.2);border-right:1px solid rgba(255,255,255,.2)}.scroll-circle .icon{transform:rotate(90deg);width:17px}.hero-bottom-right{display:flex;align-items:center;gap:10px}.sep-dot{width:5px;height:5px;border-radius:50%;background:var(--gold)}
/* Home: editorial */
.intro-layout{display:grid;grid-template-columns:1.45fr 1fr;gap:110px;align-items:start}.intro-heading .display-title{font-size:clamp(40px,4.2vw,67px)}.intro-text{padding-top:38px;color:#5e655e;font-size:16px;line-height:2.05}.intro-text p{margin:0 0 35px}.editorial-photos{margin-top:69px;display:grid;grid-template-columns:1.3fr .73fr .16fr;gap:22px;align-items:stretch}.photo-stack-main{height:540px;overflow:hidden}.photo-stack-small{height:420px;align-self:center;position:relative}.photo-stack-main img,.photo-stack-small img,.image-tile img{height:100%;width:100%;object-fit:cover;transition:transform .9s var(--ease)}.photo-stack-main:hover img,.photo-stack-small:hover img{transform:scale(1.05)}.photo-caption{display:flex;justify-content:space-between;font-size:9px;letter-spacing:.14em;margin-top:17px;color:#867862}.editorial-side-text{writing-mode:vertical-rl;display:flex;align-items:center;gap:21px;padding-top:16px;letter-spacing:.2em;text-transform:uppercase;font-size:10px;color:#9a865f}.editorial-side-text .icon{transform:rotate(90deg)}
/* Feature card deck */
.dark-section{background:var(--dark);color:#efede7}.dark-section .eyebrow{color:#caa976}.light-copy{color:#aeb9ad!important;line-height:2}.feature-cards{display:grid;grid-template-columns:repeat(4,1fr);border-left:1px solid rgba(255,255,255,.14);border-top:1px solid rgba(255,255,255,.14)}.feature-card{padding:36px 27px 28px;min-height:290px;border-right:1px solid rgba(255,255,255,.14);border-bottom:1px solid rgba(255,255,255,.14);position:relative;transition:background .35s}.feature-card:hover{background:rgba(255,255,255,.05)}.feature-icon{color:#d0ad74}.feature-icon .icon{width:33px;height:33px;stroke-width:1.2}.feature-line{display:block;height:1px;width:31px;background:#90774d;margin:31px 0 24px}.feature-card h3{font:400 21px var(--serif);line-height:1.3;color:#faf3e8;margin:0 0 10px}.feature-card p{font-size:13px;color:#aeb8ad;line-height:1.9;margin:0}.feature-arrow{position:absolute;top:35px;right:25px;color:#7d8d82;width:17px}
/* collection preview */
.collection-preview{background:#faf8f3}.collection-showcase{display:grid;grid-template-columns:1.25fr .75fr;gap:17px}.showcase-right{display:grid;grid-template-rows:1fr 1fr;gap:17px}.showcase-large,.showcase-small{display:block;position:relative;overflow:hidden;background:#203028;color:white}.showcase-large{height:640px}.showcase-small{height:311px}.showcase-photo,.showcase-photo:after{position:absolute;inset:0}.showcase-photo:after{content:'';background:linear-gradient(180deg,transparent 55%,rgba(4,15,13,.75))}.showcase-photo img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s var(--ease)}.showcase-large:hover img,.showcase-small:hover img{transform:scale(1.055)}.showcase-label{position:absolute;z-index:1;bottom:27px;left:27px;font-size:10px;letter-spacing:.14em;font-weight:700;text-transform:uppercase}.showcase-label span{margin:0 12px;color:#dbc18f}.showcase-large>.icon,.showcase-small>.icon{position:absolute;z-index:2;bottom:21px;right:23px;width:21px;transition:transform .3s}.showcase-large:hover>.icon,.showcase-small:hover>.icon{transform:translate(4px,-4px)}.photo-note{margin:24px 0 0;display:flex;align-items:center;gap:10px;font-size:11px;line-height:1.6;color:#85867f}.photo-note .icon{color:var(--gold);width:16px}
/* decades band */
.number-band{padding:65px 0;background:#eae4d8}.number-band-grid{display:grid;grid-template-columns:.7fr 1.1fr 1fr;align-items:center;gap:35px}.number-intro{font-size:11px;font-weight:700;letter-spacing:.2em;color:#8b795b;display:flex;flex-direction:column;align-items:flex-start;gap:17px}.number-intro .icon{width:36px;height:36px}.number-big{font:400 clamp(110px,11vw,170px) var(--serif);color:#21382e;line-height:.85;display:flex;align-items:baseline;white-space:nowrap;letter-spacing:-.1em}.number-big .plus{font-size:.46em;color:#b79a68;letter-spacing:0}.number-big small{font:700 11px var(--sans);letter-spacing:.14em;color:#69746b;align-self:flex-end;max-width:100px;line-height:1.6;margin:0 0 10px 24px;text-transform:uppercase;white-space:normal}.number-description h3{font:400 30px var(--serif);line-height:1.35;margin:0 0 15px}.number-description p{font-size:14px;color:#59655b;margin:0;line-height:1.85}
/* experience full bleed */
.experiences-highlight{padding:0}.wide-image{height:640px;position:relative;overflow:hidden;background:var(--dark)}.wide-image-bg{position:absolute;inset:0;background-size:cover;background-position:center;filter:saturate(.84);transform:scale(1.02)}.wide-image:before{content:'';inset:0;position:absolute;z-index:1;background:linear-gradient(90deg,rgba(8,23,20,.86),rgba(8,23,20,.2) 75%)}.exp-over{height:100%;position:relative;z-index:2;display:flex;align-items:center;color:#fff}.exp-over-content{max-width:650px}.exp-over-content p{color:#d7dfd7;max-width:530px;line-height:2;margin:0 0 30px}
/* steps */
.steps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}.step{position:relative;padding:20px 0 0;border-top:1px solid #d9d3c8}.step-num{font:500 10px var(--sans);letter-spacing:.2em;color:#ac8a57}.step-ico{margin:43px 0 22px}.step-ico .icon{width:29px;height:29px;color:var(--gold);stroke-width:1.2}.step h3{font:400 23px var(--serif);color:var(--dark);line-height:1.35;margin:0 0 13px}.step p{font-size:13px;color:var(--muted);line-height:1.8;margin:0}
/* shared cross-page CTA */
.global-cta{background:var(--dark);color:#fff;position:relative;overflow:hidden;padding:108px 0 105px}.global-cta-inner{position:relative;min-height:275px;display:flex;align-items:center}.global-cta .reveal{position:relative;z-index:2;max-width:780px}.global-cta h2{font:400 clamp(38px,5vw,72px)/1.2 var(--serif);letter-spacing:-.035em;margin:18px 0}.global-cta p{color:#d0d8d0;font-size:15px;max-width:510px;margin-bottom:26px}.global-cta-halo{position:absolute;right:-210px;top:-175px;width:750px;height:750px;border:1px solid rgba(202,173,117,.1);border-radius:50%}.global-cta-halo:before,.global-cta-halo:after{content:'';position:absolute;border:1px solid rgba(202,173,117,.1);border-radius:50%;inset:68px}.global-cta-halo:after{inset:145px}.cta-monogram{font:400 210px var(--serif);letter-spacing:-.12em;position:absolute;right:35px;bottom:-22px;color:#fff;opacity:.035;pointer-events:none}
/* Footer */
.footer{background:#0b1a16;color:#d8dfd7;padding:77px 0 0}.footer-top{display:grid;grid-template-columns:1.5fr .8fr 1fr;gap:70px}.footer-brand img{width:235px;height:154px;object-fit:contain;object-position:left;margin:-20px 0 -9px}.footer-brand p{color:#aeb9ad;font:400 18px var(--serif)}.footer-col{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.footer-col h4{font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;margin:0 0 15px;color:var(--gold-bright)}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:8px 28px}.footer-links a,.footer-col>a,.footer-col>span{font-size:13px;color:#aeb9ad;transition:color .2s}.footer-links a:hover,.footer-col>a:hover{color:var(--gold-bright)}.socials{display:flex;gap:10px;margin-top:14px}.socials a,.socials .social-text{width:33px;height:33px;border:1px solid rgba(255,255,255,.2);display:grid;place-items:center;color:#e1e5dc;transition:background .2s}.socials a:hover{background:var(--gold);color:var(--dark)}.socials .icon{width:16px;height:16px}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.13);margin-top:72px;padding:27px 0;font-size:10px;color:#9baa9a;letter-spacing:.08em;text-transform:uppercase}.float-wa{position:fixed;bottom:27px;right:27px;display:flex;align-items:center;gap:9px;color:#fff;background:#1c6b4d;z-index:76;box-shadow:0 9px 45px rgba(7,35,19,.22);padding:12px 16px;font-size:11px;font-weight:700;letter-spacing:.06em;border:1px solid rgba(255,255,255,.25);transition:transform .25s,background .25s}.float-wa:hover{transform:translateY(-4px);background:#147b50}.float-wa .icon{width:21px;height:21px}.back-to-top{position:fixed;right:27px;bottom:86px;display:grid;place-items:center;background:var(--paper);border:1px solid #d6d0c6;width:43px;height:43px;z-index:75;opacity:0;pointer-events:none;transition:opacity .3s}.back-to-top.show{opacity:1;pointer-events:auto}.back-to-top .icon{transform:rotate(-45deg)}
/* secondary page hero */
.page-hero{height:570px;min-height:530px;margin-top:var(--header);position:relative;color:#fff;display:flex;align-items:center;overflow:hidden;background:#203c33}.page-hero-photo{position:absolute;inset:0;background-image:var(--photo),url('img/villa-pool.webp');background-size:cover;background-position:center;transform:scale(1.035);animation:heroZoom 20s ease-in-out alternate infinite}.page-hero:before{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(9,28,23,.88) 0%,rgba(11,33,27,.58) 55%,rgba(11,33,27,.25) 100%),linear-gradient(0deg,rgba(10,28,24,.4),transparent 50%)}.page-hero-content{position:relative;z-index:2;padding:85px 0 50px}.page-hero h1{font:400 clamp(51px,6vw,91px)/1.18 var(--serif);letter-spacing:-.05em;margin:17px 0 17px;max-width:840px}.page-hero-content>p{max-width:590px;color:#e6e8df;font-size:16px;line-height:1.9;margin:0}.page-hero-index{position:absolute;z-index:2;bottom:28px;right:5%;color:#d1cab9;font-size:9px;letter-spacing:.21em;text-transform:uppercase}.line-rule{height:1px;width:63px;background:var(--gold);margin-top:30px}
/* Villa catalog */
.intro-inline{max-width:850px}.intro-inline>p{color:var(--muted);max-width:730px;font-size:16px;line-height:1.95}.filter-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:65px 0 28px;padding:17px 0;border-bottom:1px solid #d8d4cb;border-top:1px solid #d8d4cb}.filter-label{display:flex;align-items:center;gap:10px;color:#6a6e66;font-size:11px;text-transform:uppercase;letter-spacing:.14em;font-weight:700}.filter-label .icon{color:var(--gold)}.filter-buttons{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.filter-btn{font-size:11px;letter-spacing:.08em;font-weight:700;border:1px solid transparent;color:#6d736b;background:transparent;padding:9px 16px;transition:all .2s}.filter-btn.active,.filter-btn:hover{background:var(--dark);color:#fff}.villas-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px 22px}.villa-card{min-width:0}.villa-card.filtered-out{display:none}.villa-media{height:330px;position:relative;overflow:hidden;background:#ded8cc}.villa-media img{height:100%;width:100%;object-fit:cover;transition:transform .85s var(--ease)}.villa-card:hover .villa-media img{transform:scale(1.055)}.villa-counter{position:absolute;bottom:17px;left:19px;background:rgba(255,255,255,.92);padding:5px 11px;font-size:10px;letter-spacing:.18em}.villa-info{display:flex;justify-content:space-between;gap:12px;padding:23px 0}.villa-info h3{font:400 27px var(--serif);line-height:1.35;margin:6px 0}.villa-info p:not(.mini-label){margin:0;color:var(--muted);font-size:13px;line-height:1.8}.villa-info .mini-label{margin:0}.circle-arrow{width:41px;height:41px;border:1px solid #d5c9b6;border-radius:50%;display:grid;place-items:center;flex:none;transition:all .3s var(--ease)}.circle-arrow:hover{background:var(--gold);border-color:var(--gold);transform:rotate(45deg)}.circle-arrow .icon{width:17px;height:17px}.consultation-block{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:90px}.consultation-block>div:first-child p,.owner-steps-content p{color:var(--muted);font-size:16px;line-height:2;margin-bottom:30px}.consult-photo{height:520px;overflow:hidden}.consult-photo img{height:100%;width:100%;object-fit:cover}
/* Services */
.services-list{margin-top:70px;border-top:1px solid #dcd5c9}.service-row{display:grid;grid-template-columns:60px 72px 1fr 45px;gap:28px;align-items:start;padding:32px 16px;border-bottom:1px solid #ded8cc;transition:background .2s}.service-row:hover{background:#f0ece4}.service-number{font-size:11px;letter-spacing:.17em;color:#9e8762;padding-top:9px}.service-row-icon .icon{width:33px;height:33px;color:#a88b59;stroke-width:1.2}.service-row h3{font:400 30px var(--serif);line-height:1.3;margin:0 0 10px;color:var(--dark)}.service-row p{max-width:700px;margin:0;color:var(--muted);font-size:14px;line-height:1.9}.service-feature{display:grid;grid-template-columns:1fr 1fr;min-height:650px;background:var(--dark)}.service-feature-image{overflow:hidden;min-height:560px}.service-feature-image img{height:100%;width:100%;object-fit:cover}.service-feature-content{display:flex;align-items:center;padding:90px min(7vw,90px);color:#fff}.service-feature-content p{max-width:520px;color:#cdd8cc;font-size:15px;line-height:2;margin-bottom:32px}
/* experiences */
.experiences-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.experience-card{background:#fff;border:1px solid #ebe6dc}.experience-media{height:330px;position:relative;overflow:hidden}.experience-media img{height:100%;width:100%;object-fit:cover;transition:transform 1s var(--ease)}.experience-card:hover img{transform:scale(1.05)}.experience-icon{width:57px;height:57px;background:var(--paper);border:1px solid #e4d8c4;position:absolute;right:24px;bottom:-1px;display:grid;place-items:center;color:#9d8051}.experience-icon .icon{width:26px;height:26px}.experience-body{padding:35px 35px 38px}.experience-body h3{font:400 31px var(--serif);line-height:1.3;margin:7px 0 15px}.experience-body p{font-size:14px;color:var(--muted);line-height:1.95;min-height:55px}.experience-body .text-link{margin-top:12px}.destination-feature{background:var(--cream)}.destination-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.destination-photo{height:600px}.destination-photo img{width:100%;height:100%;object-fit:cover}.destination-text p{color:var(--muted);line-height:2;margin:0 0 21px}
/* about */
.about-intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:105px;align-items:center}.about-photo{height:640px;overflow:hidden}.about-photo img{height:100%;width:100%;object-fit:cover}.about-intro-copy>p{color:var(--muted);font-size:15px;line-height:2;margin:18px 0}.about-signature{font:400 34px var(--serif);letter-spacing:-.04em;color:var(--dark);margin-top:32px}.about-signature span{color:var(--gold)}.mission-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px}.mission-card{padding:45px 45px 30px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.025)}.mission-card>.icon{width:34px;height:34px;color:#c6a670;display:block;margin-bottom:31px}.mission-card h2{font:400 clamp(29px,3vw,43px)/1.32 var(--serif);margin:20px 0}.mission-card p{color:#bac7bb;line-height:2;font-size:14px}.values-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.value-card{border:1px solid #dfd7ca;min-height:245px;padding:25px 22px;position:relative;transition:transform .35s,background .35s}.value-card:hover{transform:translateY(-5px);background:#eee9de}.value-index{position:absolute;right:22px;top:24px;font-size:10px;color:#b8b0a3;letter-spacing:.12em}.value-card>.icon{width:28px;height:28px;color:#ad8b57;stroke-width:1.2;display:block;margin:10px 0 26px}.value-card h3{font:400 22px var(--serif);line-height:1.3;margin:0 0 10px}.value-card p{font-size:13px;line-height:1.85;color:#73796f;margin:0}.quote-panel{background:#e9e1d1;text-align:center;padding:96px 0}.quote-inner{display:flex;flex-direction:column;align-items:center}.quote-ornament{font-size:28px;color:#ad8e58}.quote-inner p{font:400 34px var(--serif);margin:13px 0 0}.quote-inner h2{font:400 clamp(42px,5vw,68px)/1.3 var(--serif);color:#987c4b;margin:0 0 35px}.quote-inner>span{font-size:10px;letter-spacing:.26em;color:#667168}
/* owners */
.owner-intro{display:grid;grid-template-columns:1.3fr 1fr;gap:70px;align-items:start}.owner-intro>p{font-size:16px;color:var(--muted);line-height:2.1;margin-top:40px}.owners-benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:60px}.owner-benefit{padding:28px 24px;border:1px solid #e0d9cc;min-height:252px}.owner-benefit>.icon{color:#ac8955;width:34px;height:34px;margin-bottom:30px}.owner-benefit h3{font:400 22px var(--serif);margin:0 0 10px}.owner-benefit p{font-size:13px;color:var(--muted);line-height:1.9;margin:0}.owner-steps{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.owner-steps-photo{height:570px;overflow:hidden}.owner-steps-photo img{width:100%;height:100%;object-fit:cover}
/* Contact */
.contact-section{background:#faf8f3}.contact-layout{display:grid;grid-template-columns:.95fr 1.05fr;gap:80px;align-items:start}.contact-left>p{color:var(--muted);line-height:2;max-width:470px}.contact-methods{margin-top:45px;display:flex;flex-direction:column;gap:8px}.contact-methods>a,.contact-methods>.contact-method-static{display:flex;align-items:center;gap:20px;border-bottom:1px solid #e4ded2;min-height:84px}.contact-method-icon{display:grid;place-items:center;width:43px;height:43px;border:1px solid #d8c5a7;color:#a08459}.contact-method-icon .icon{width:21px;height:21px}.contact-methods a>span:nth-child(2),.contact-method-static>span:nth-child(2){display:flex;flex:1;flex-direction:column;line-height:1.4;gap:5px}.contact-methods small{font-size:10px;letter-spacing:.17em;color:#a38b60}.contact-methods strong{font-size:14px;color:var(--dark);font-weight:500}.contact-methods a>.icon{width:17px;color:#b09b7e}.form-panel{background:#fff;border:1px solid #e6ded1;box-shadow:0 26px 75px rgba(22,42,31,.09);padding:45px 44px 42px}.form-panel-head{display:flex;gap:10px;align-items:center;color:#a88e5e;font-size:10px;font-weight:700;letter-spacing:.2em}.form-panel-head .icon{width:18px}.form-panel h3{font:400 35px var(--serif);margin:12px 0 6px}.form-panel>p{font-size:13px;color:#737b72;margin:0 0 29px}.form-fields{display:grid;grid-template-columns:1fr 1fr;gap:21px 18px}.field{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:700;color:#4a554b;line-height:1.5}.field-full{grid-column:1/-1}.field input,.field select,.field textarea{border:1px solid #dcd6cc;border-radius:0;outline:none;background:#fbfaf7;color:#3b453d;font-size:13px;font-weight:400;padding:14px 13px;width:100%;min-height:47px;transition:border-color .25s,box-shadow .25s}.field textarea{min-height:134px;resize:vertical}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--gold);box-shadow:0 0 0 2px #e6d4b4}.field input::placeholder,.field textarea::placeholder{color:#999a94}.form-submit{margin-top:28px;width:100%;justify-content:center}.form-fineprint{display:flex;align-items:flex-start;gap:8px;margin-top:18px;color:#8b8c83;font-size:11px;line-height:1.75}.form-fineprint .icon{width:17px;color:var(--gold)}.map-like{height:420px;background:#192c26;position:relative;overflow:hidden;color:#fff}.map-like-background{position:absolute;inset:0;background:url('https://images.unsplash.com/photo-1500534623283-312aade485b7?auto=format&fit=crop&w=1700&q=80') center/cover;filter:saturate(.75)}.map-like:before{content:'';position:absolute;z-index:1;inset:0;background:rgba(9,35,25,.7)}.map-like-content{position:relative;z-index:2;display:flex;align-items:center;flex-direction:column;justify-content:center;text-align:center;height:100%}.map-like-content>.icon{width:38px;height:38px;color:#d8b77e;margin-bottom:16px}.map-like-content h2{font:400 45px var(--serif);margin:11px 0 0}.map-like-content p{font-size:12px;letter-spacing:.2em;color:#d3dfd1;text-transform:uppercase}
/* Motion */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease),transform 1s var(--ease)}.reveal.visible{opacity:1;transform:translateY(0)}.reveal:nth-child(2){transition-delay:.09s}.reveal:nth-child(3){transition-delay:.15s}.reveal:nth-child(4){transition-delay:.2s}@keyframes heroZoom{from{transform:scale(1.03)}to{transform:scale(1.13)}}.site-preloader{position:fixed;inset:0;z-index:150;background:#0d231c;display:flex;align-items:center;justify-content:center;flex-direction:column;color:var(--gold-bright);transition:opacity .65s,visibility .65s;pointer-events:none}.site-preloader.is-gone{opacity:0;visibility:hidden}.preloader-mark{font:400 58px var(--serif);letter-spacing:-.11em}.preloader-bar{width:105px;height:1px;background:rgba(255,255,255,.15);margin-top:24px;overflow:hidden}.preloader-bar span{height:100%;width:35%;display:block;background:var(--gold);animation:barTravel 1.15s ease-in-out infinite alternate}@keyframes barTravel{from{transform:translateX(-100%)}to{transform:translateX(285%)}}
/* tablet */
@media(max-width:1190px){.nav{gap:15px}.nav-link{font-size:9px}.head-actions{gap:13px}.brand{width:145px}.brand img{width:140px}.container,.container-wide{width:calc(100% - 64px)}.intro-layout{gap:55px}.about-intro-grid,.contact-layout,.destination-grid,.owner-steps,.consultation-block{gap:50px}.feature-cards{grid-template-columns:repeat(2,1fr)}.villas-grid{gap:25px 15px}.values-cards{grid-template-columns:repeat(3,1fr)}}
@media(max-width:990px){:root{--header:75px}.header-contact{display:none}.menu-btn{display:flex}.brand,.brand img{width:135px;height:73px}.nav{display:flex;position:fixed;top:var(--header);left:0;right:0;bottom:0;height:calc(100svh - var(--header));background:var(--paper);z-index:100;padding:36px max(32px,5vw) 85px;overflow:auto;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;transform:translateX(100%);opacity:0;pointer-events:none;transition:transform .45s var(--ease),opacity .35s}.nav.open{transform:translateX(0);opacity:1;pointer-events:auto}.nav-link{font-size:20px;letter-spacing:.03em;font-family:var(--serif);font-weight:400;padding:13px 5px;border-bottom:1px solid #e6e1d8}.nav-link:after{display:none}.header.scrolled{height:75px}.home-hero{min-height:660px}.hero-vertical{display:none}.hero-bottom{padding-inline:32px}.hero-bottom-right{display:none}.editorial-photos{grid-template-columns:1.1fr .8fr;gap:14px}.editorial-side-text{display:none}.showcase-large{height:535px}.showcase-small{height:259px}.number-band-grid{grid-template-columns:.7fr 1fr 1.1fr}.number-big{font-size:110px}.destination-photo{height:500px}.about-photo{height:540px}.owner-benefit{padding:25px 18px}.footer-top{gap:30px}}
@media(max-width:780px){.container,.container-wide{width:calc(100% - 38px)}.section{padding:77px 0}.split-heading,.intro-layout,.about-intro-grid,.mission-grid,.destination-grid,.owner-intro,.owner-steps,.contact-layout,.consultation-block{display:grid;grid-template-columns:1fr;gap:20px}.split-heading{gap:12px}.split-heading>p,.split-heading .section-aside{max-width:none}.intro-text{padding-top:0}.editorial-photos{margin-top:40px;grid-template-columns:1fr 1fr}.photo-stack-main{height:410px}.photo-stack-small{height:320px}.home-hero h1{font-size:clamp(48px,8vw,80px)}.hero-summary{max-width:620px}.feature-cards{grid-template-columns:1fr 1fr}.feature-card{min-height:275px}.collection-showcase{grid-template-columns:1fr}.showcase-large{height:430px}.showcase-right{grid-template-columns:1fr 1fr;grid-template-rows:1fr}.showcase-small{height:270px}.number-band-grid{grid-template-columns:1fr 1fr;gap:25px}.number-intro{grid-column:1/-1}.number-big{font-size:125px}.steps-grid,.owners-benefits{grid-template-columns:repeat(2,1fr)}.footer-top{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-bottom{flex-direction:column;align-items:flex-start}.villas-grid{grid-template-columns:1fr 1fr}.villa-media{height:300px}.services-list{margin-top:25px}.service-feature{grid-template-columns:1fr}.service-feature-image{height:320px;min-height:0}.service-feature-content{padding:65px 30px}.experiences-grid{gap:13px}.experience-media{height:260px}.experience-body{padding:25px}.destination-photo{height:400px;order:2}.destination-text{order:1}.about-photo{height:470px}.values-cards{grid-template-columns:1fr 1fr}.owner-intro>p{margin:0}.owner-steps-photo{height:390px}.form-panel{padding:35px 26px}.contact-layout{gap:40px}.global-cta{padding:75px 0}.cta-monogram{font-size:120px}.page-hero{height:475px;min-height:475px}.page-hero h1{font-size:clamp(43px,8vw,75px)}}
@media(max-width:560px){.container,.container-wide{width:calc(100% - 32px)}.header-inner{gap:8px}.head-actions{gap:15px}.header{height:75px}.brand,.brand img{width:123px}.hero-photo{background-position:58% center}.hero-vignette{background:linear-gradient(90deg,rgba(8,21,18,.85),rgba(8,21,18,.5)),linear-gradient(0deg,rgba(8,21,18,.65),transparent 50%)}.home-hero{height:auto;min-height:calc(100svh - 75px);max-height:none}.home-hero-inner{min-height:590px;height:auto;padding:80px 0 65px}.home-hero h1{font-size:clamp(45px,10vw,65px);line-height:1.18}.hero-kicker{font-size:9px;letter-spacing:.19em}.hero-summary{font-size:13px;line-height:1.85;margin:20px 0 28px}.hero-cta{width:100%}.hero-cta .btn{width:100%}.hero-bottom{position:relative;padding:0 16px;min-height:58px;font-size:9px}.hero-bottom-left{font-size:8px;letter-spacing:.1em}.hero-scroll{gap:10px;font-size:8px}.scroll-circle{height:58px}.section{padding:65px 0}.display-title{font-size:clamp(35px,9vw,52px);line-height:1.23}.intro-layout{gap:5px}.intro-heading .display-title{font-size:clamp(35px,9vw,52px)}.intro-text{font-size:14px}.editorial-photos{grid-template-columns:1.15fr .85fr;gap:10px}.photo-stack-main{height:320px}.photo-stack-small{height:244px}.photo-caption{font-size:7px;letter-spacing:.05em}.feature-cards{grid-template-columns:1fr}.feature-card{min-height:225px;padding:25px}.feature-line{margin:20px 0}.split-heading{margin-bottom:25px}.showcase-large{height:370px}.showcase-right{grid-template-columns:1fr;grid-template-rows:1fr 1fr}.showcase-small{height:270px}.showcase-label{font-size:9px;left:15px;bottom:20px}.number-band-grid{grid-template-columns:1fr}.number-big{font-size:125px}.number-intro{grid-column:auto}.number-description h3{font-size:27px}.number-band{padding:50px 0}.wide-image{height:570px}.exp-over-content p{font-size:14px}.steps-grid,.owners-benefits,.villas-grid,.experiences-grid{grid-template-columns:1fr}.step{padding-top:13px}.step-ico{margin:25px 0 15px}.center-title{margin-bottom:40px}.global-cta h2{font-size:40px}.global-cta p{font-size:13px}.footer{padding-top:45px}.footer-top{grid-template-columns:1fr;gap:25px}.footer-brand{grid-column:auto}.footer-brand img{width:190px;height:110px}.footer-bottom{margin-top:44px;font-size:9px}.float-wa{bottom:15px;right:15px;padding:12px}.float-wa span{display:none}.back-to-top{right:15px;bottom:68px}.page-hero{height:460px;min-height:460px}.page-hero-content{padding:60px 0 30px}.page-hero h1{font-size:clamp(43px,11vw,57px)}.page-hero-content>p{font-size:13px;line-height:1.8}.page-hero-index{right:16px;bottom:15px;font-size:8px}.filter-toolbar{flex-direction:column;align-items:flex-start;gap:10px;margin-top:40px}.filter-buttons{gap:4px}.filter-btn{font-size:10px;padding:8px 11px}.villa-media{height:320px}.villa-info{padding:18px 0}.consult-photo{height:320px}.service-row{grid-template-columns:27px 33px 1fr;gap:12px;padding:25px 3px}.service-row h3{font-size:24px}.service-row p{font-size:12px}.service-row .circle-arrow{display:none}.service-row-icon .icon{width:24px;height:24px}.service-feature-image{height:260px}.service-feature-content{padding:55px 16px}.experience-media{height:300px}.experience-body{padding:23px 21px}.destination-photo{height:300px}.about-photo{height:400px}.mission-grid{gap:15px}.mission-card{padding:28px 20px}.values-cards{grid-template-columns:1fr}.value-card{min-height:170px}.value-card>.icon{margin:10px 0 18px}.quote-panel{padding:65px 0}.quote-inner h2{font-size:36px}.owner-steps-photo{height:320px}.form-panel{padding:28px 19px}.form-panel h3{font-size:29px}.form-fields{grid-template-columns:1fr;gap:14px}.form-submit{white-space:normal}.contact-methods strong{font-size:12px;overflow-wrap:anywhere}.contact-methods>a,.contact-methods>.contact-method-static{gap:12px}.map-like{height:300px}.map-like-content h2{font-size:32px}.photo-note{align-items:flex-start}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}.site-preloader{display:none}}

/* LIVE CATALOG · PREMIUM RESPONSIVE */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.catalog-section{background:var(--paper)}.catalog-toolbar{display:flex;align-items:center;gap:14px;margin-top:52px;padding:20px;background:#f3f1ec;border:1px solid #e6e0d6}.catalog-search{flex:1;position:relative;display:flex;align-items:center;min-width:180px}.catalog-search .icon{position:absolute;left:17px;color:#8f866e;width:18px;height:18px;pointer-events:none}.catalog-search input,.catalog-select select{border:1px solid #ddd9d0;background:#fff;color:var(--dark);font:400 13px var(--sans);height:52px;width:100%;outline:none;transition:border-color .25s}.catalog-search input{padding:0 14px 0 46px}.catalog-select select{padding:0 30px 0 15px;min-width:180px;cursor:pointer}.catalog-search input:focus,.catalog-select select:focus{border-color:#b69a6b}.catalog-count{text-align:right;min-height:32px;color:#777872;font-size:11px;letter-spacing:.08em;margin-top:12px}.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px 22px}.catalog-card{background:#fff;overflow:hidden;transition:transform .35s var(--ease),box-shadow .35s var(--ease);border:1px solid #e8e5df;animation:catalogEnter .55s both;animation-delay:var(--delay,0ms)}.catalog-card:hover{transform:translateY(-6px);box-shadow:0 23px 48px #102b211a}@keyframes catalogEnter{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.catalog-card-photo{display:block;position:relative;overflow:hidden;background:#e9e3d8;height:290px}.catalog-card-photo img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}.catalog-card:hover .catalog-card-photo img{transform:scale(1.08)}.catalog-badge{position:absolute;top:17px;left:17px;background:#f5efdf;color:#73562b;padding:8px 13px;font:600 9px var(--sans);letter-spacing:.13em}.catalog-card-body{padding:25px 24px 22px}.catalog-card-eyebrow{display:flex;align-items:center;gap:7px;font-size:10px;letter-spacing:.08em;color:#9f7b47;text-transform:uppercase;margin:0 0 13px}.catalog-card-eyebrow .icon{width:14px;height:14px}.catalog-card h3{font:400 28px/1.24 var(--serif);color:var(--dark);margin:0 0 20px;min-height:68px}.catalog-card h3 a:hover{color:#8f7040}.catalog-card-meta{display:flex;align-items:center;flex-wrap:wrap;gap:11px 15px;padding-bottom:19px;border-bottom:1px solid #eee9e0}.catalog-stat{display:inline-flex;align-items:center;gap:7px;font:400 11px var(--sans);color:#696f69}.catalog-stat .icon{width:15px;height:15px;color:#aa8f5d}.catalog-card-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:21px}.catalog-rate{font-size:12px;color:#786745;margin:0}.catalog-view{font-size:10px;letter-spacing:.06em;display:inline-flex;align-items:center;gap:5px;color:var(--forest);text-transform:uppercase;font-weight:700;text-align:right}.catalog-view .icon{width:14px;height:14px}.catalog-empty,.catalog-loading{grid-column:1/-1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:#f1eee8;border:1px solid #e8e2d7;min-height:345px;padding:45px 25px}.catalog-empty>.icon{width:40px;height:40px;color:var(--gold);margin-bottom:18px}.catalog-empty h3{font:400 33px var(--serif);margin:0 0 12px}.catalog-empty p{font-size:13px;line-height:1.9;color:#737b74;max-width:540px;margin:0 0 23px}.catalog-loading{min-height:250px;gap:17px;color:#8d856f;font-size:13px}.catalog-spinner{display:block;width:27px;height:27px;border:2px solid #ddd4c2;border-top-color:#a88a55;border-radius:50%;animation:catalogSpin .8s linear infinite}@keyframes catalogSpin{to{transform:rotate(360deg)}}.home-catalog-grid{margin-top:40px}
.villa-detail-page{padding:62px 0 100px;background:#faf9f6}.catalog-back{font-size:12px;color:#94816b;letter-spacing:.06em}.catalog-back:hover{color:#405c4e}.villa-detail-heading{margin:38px 0 40px}.villa-detail-heading h1{font:400 clamp(47px,6vw,83px)/1.08 var(--serif);margin:13px 0 12px;color:var(--forest)}.villa-detail-heading .eyebrow{color:#ae8e5a}.villa-detail-loc{display:flex;align-items:center;gap:7px;font:400 13px var(--sans);color:#6f7870}.villa-detail-loc .icon{width:15px;color:var(--gold)}.villa-detail-gallery{display:grid;grid-template-columns:minmax(0,1fr) 145px;gap:12px;max-height:640px}.villa-detail-main-photo{border:0;background:#e7e3dc;display:block;cursor:zoom-in;min-height:410px;height:620px;padding:0;overflow:hidden}.villa-detail-main-photo img{height:100%;width:100%;object-fit:cover;transition:transform .55s}.villa-detail-main-photo:hover img{transform:scale(1.035)}.villa-detail-thumbs{display:flex;flex-direction:column;gap:12px;overflow:auto;scrollbar-width:thin}.villa-detail-thumb{position:relative;cursor:pointer;border:2px solid transparent;background:#e7e3dc;padding:0;min-height:104px;flex:1;max-height:128px;overflow:hidden}.villa-detail-thumb.selected{border-color:var(--gold)}.villa-detail-thumb img{height:100%;width:100%;object-fit:cover}.villa-detail-content{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:8%;margin-top:70px}.villa-detail-description .eyebrow{color:#9c7d49}.villa-body-text{white-space:pre-line;color:#626f67;font-size:15px;line-height:2;margin-top:24px}.villa-detail-description h2{font:400 34px var(--serif);margin:40px 0 23px}.villa-amenities{display:grid;grid-template-columns:repeat(2,1fr);gap:13px 20px;padding:0;list-style:none}.villa-amenities li{display:flex;align-items:center;gap:10px;font-size:13px;color:#515e55}.villa-amenities .icon{width:15px;height:15px;color:var(--gold);flex-shrink:0}.villa-inquiry-box{padding:34px 30px;background:#f1efe8;border:1px solid #e0dace;align-self:start;position:sticky;top:110px}.villa-inquiry-box h3{font:400 31px var(--serif);margin:15px 0;color:var(--forest)}.villa-inquiry-box>p{font-size:13px;line-height:1.8;color:#73796e}.villa-spec-list{display:flex;flex-wrap:wrap;flex-direction:column;gap:14px;margin:25px 0;padding:24px 0;border-top:1px solid #d9d3c7;border-bottom:1px solid #d9d3c7}.villa-inquiry-box .btn{display:flex;justify-content:center;width:100%}.villa-contact-link{display:block;text-align:center;font-size:12px;text-decoration:underline;margin-top:17px;color:#637367}.villa-lightbox{position:fixed;z-index:200;inset:0;background:rgba(5,12,9,.96);display:flex;align-items:center;justify-content:center;padding:5vw}.villa-lightbox img{max-width:100%;max-height:86vh;object-fit:contain}.villa-lightbox button{position:absolute;border:1px solid #ffffff40;background:#202e2bd4;color:#fff;cursor:pointer;display:grid;place-items:center;width:54px;height:54px;border-radius:50%;font:400 35px var(--serif)}.villa-lightbox .lightbox-close{right:25px;top:25px;font:400 35px var(--sans)}.villa-lightbox .lightbox-prev{left:18px;top:50%}.villa-lightbox .lightbox-next{right:18px;top:50%}.lightbox-counter{position:absolute;bottom:18px;font-size:13px;letter-spacing:.12em;color:#fff}
@media(max-width:990px){.catalog-grid{grid-template-columns:repeat(2,1fr)}.catalog-toolbar{flex-wrap:wrap}.catalog-search{flex-basis:100%}.catalog-select{flex:1}.catalog-select select{min-width:0}.villa-detail-gallery{grid-template-columns:minmax(0,1fr) 105px}.villa-detail-content{grid-template-columns:1fr 320px;gap:35px}}
@media(max-width:710px){.catalog-grid{grid-template-columns:1fr}.catalog-toolbar{padding:13px;gap:9px}.catalog-select{flex:1 1 100%}.catalog-card-photo{height:310px}.catalog-card h3{min-height:0}.villa-detail-gallery{display:flex;flex-direction:column;max-height:none}.villa-detail-main-photo{height:370px;min-height:0}.villa-detail-thumbs{display:flex;flex-direction:row;overflow-x:auto;height:80px}.villa-detail-thumb{min-width:85px;height:78px;max-height:78px}.villa-detail-content{grid-template-columns:1fr;margin-top:38px}.villa-inquiry-box{position:static}.villa-amenities{grid-template-columns:1fr}.villa-detail-page{padding:30px 0 65px}.villa-detail-heading{margin:30px 0}.villa-lightbox{padding:15vw 15px}.villa-lightbox button{width:43px;height:43px}.villa-lightbox .lightbox-prev{left:8px}.villa-lightbox .lightbox-next{right:8px}}
@media(prefers-reduced-motion:reduce){.catalog-card{animation:none}}

/* Cinematic empty-state until the first real property is published */
.catalog-empty{min-height:390px;color:#fdf8ef;background:linear-gradient(90deg,rgba(12,36,28,.92),rgba(12,36,28,.7)),url('https://images.unsplash.com/photo-1613490493576-7fde63acd811?auto=format&fit=crop&w=1600&q=80') center/cover;border:1px solid #496049}.catalog-empty h3{color:#fdf8ef;max-width:700px}.catalog-empty p{color:#eee9db}.catalog-empty>.icon{color:#d8b67b}.catalog-empty .btn{background:#c8a76d;color:#11291d;border-color:#c8a76d}
