@font-face{font-family:Inter;src:url('fonts/inter.woff2') format('woff2');font-weight:100 900;font-display:swap}@font-face{font-family:Playfair;src:url('fonts/playfair.woff2') format('woff2');font-weight:400 900;font-display:swap}
:root{--ink:#191c18;--dark:#171b17;--paper:#f6f5f0;--gold:#d8b676;--muted:#6b6d65;--border:#ddded4;--serif:Playfair,Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,Arial,sans-serif;font-size:16px;line-height:1.65}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{cursor:wait}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.15}h2{font-size:clamp(2.25rem,3.7vw,3.7rem);letter-spacing:-.045em}h2 em,h1 em{font-weight:400;color:#ab854b}p{line-height:1.8}button{color:inherit}a,button{transition:background .2s,color .2s,transform .2s}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #a57a36;outline-offset:5px}input:focus,textarea:focus,select:focus{outline:2px solid #a57a36;outline-offset:2px}[hidden]{display:none!important}.skip{position:fixed;top:-100px;left:20px;padding:12px 20px;background:white;z-index:100}.skip:focus{top:10px}.eyebrow{font:500 .75rem/1.6 Inter,Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase}.section{padding:100px max(5.5vw,24px)}header{height:94px;padding:0 4.5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d7d8cf;background:#f6f5f0f5;position:sticky;top:0;z-index:20;backdrop-filter:blur(14px)}.brand{display:flex;align-items:center;gap:13px;flex-shrink:0}.brand img{width:62px;height:62px;object-fit:cover}.brand>span{font:400 1.55rem/1.15 var(--serif);letter-spacing:.22em}.brand small{font:500 .62rem/2.5 Inter,Arial,sans-serif;letter-spacing:.29em;display:block}nav{display:flex;align-items:center;gap:30px;font-size:.85rem}nav>a:not(.nav-cta):hover{color:#927035}.nav-cta{background:var(--ink);color:white;padding:14px 20px;display:flex;gap:25px}.nav-cta:hover,.btn.dark:hover{background:#394132}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:46% 54%;background:var(--dark);color:#fff;min-height:650px}.hero-copy{padding:68px 7% 45px 12%;display:flex;flex-direction:column;justify-content:center}.hero .eyebrow{color:#d6c49f;font-size:.68rem;letter-spacing:.14em}.line{display:inline-block;vertical-align:middle;width:22px;height:1px;background:var(--gold);margin-right:6px}h1{font-size:clamp(3.4rem,5.9vw,6.3rem);letter-spacing:-.055em;line-height:1.08;margin:25px 0}h1 em{color:var(--gold)}.hero-description{max-width:455px;color:#c6cbc1;font-size:.94rem}.hero-price{margin:27px 0 24px}.hero-price>span{display:block;font-size:.65rem;letter-spacing:.16em;color:#c5c9bd}.hero-price strong{font-family:var(--serif);font-size:1.9rem;font-weight:400}.hero-price small{font-family:Inter,Arial,sans-serif;font-size:.75rem;color:#bec5b9}.actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:17px 22px;font-size:.83rem;font-weight:550;border:1px solid transparent;line-height:1.4}.gold{background:var(--gold);color:#202519}.btn.gold:hover,.mobile-bar .gold:hover{background:#e9c98f;transform:translateY(-2px)}.text-link{display:inline-flex;align-items:center;gap:22px;font-size:.83rem;background:none;padding:9px 0;border:0;border-bottom:1px solid currentColor}.text-link:hover{color:#a57a36}.hero .text-link{color:#f3f3e8}.hero-notes{display:flex;flex-wrap:wrap;gap:14px;margin-top:38px;font-size:.65rem;color:#c1c7b8}.hero-notes span+span:before{content:'·';margin-right:14px;color:var(--gold)}.hero-visual{position:relative;overflow:hidden;min-height:650px}.hero-visual>img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:50% 50%}.hero-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#08100a20 55%,#0b160dc9)}.image-top,.image-bottom{position:absolute;z-index:1;left:30px;right:30px;display:flex;justify-content:space-between;align-items:center}.image-top{top:25px}.image-tag{font-size:.65rem;letter-spacing:.15em;background:#11190f80;backdrop-filter:blur(10px);border:1px solid #ffffff35;padding:10px 14px}.image-tag i{display:inline-block;background:#d8b676;width:6px;height:6px;border-radius:50%;margin-right:7px}.image-index{font-size:.7rem;letter-spacing:.2em;color:white}.image-bottom{bottom:45px;gap:15px}.image-bottom p{font-family:var(--serif);font-size:1.45rem;line-height:1.4;margin-top:5px}.circle-link{width:42px;height:42px;border:1px solid #c6c9bd;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;font-size:1.3rem;background:transparent;flex-shrink:0}.circle-link:hover{background:var(--gold);color:var(--ink);border-color:var(--gold)}.render-note{position:absolute;bottom:10px;right:20px;color:#deded4;font-size:.62rem;z-index:1}.numbers{display:grid;grid-template-columns:repeat(4,1fr);padding:34px 5.5%;border-bottom:1px solid var(--border)}.numbers>div{display:flex;flex-direction:column;align-items:center;border-right:1px solid var(--border)}.numbers>div:last-child{border:0}.numbers strong{font:400 2.7rem var(--serif);letter-spacing:-.04em}.numbers strong span{font-size:1.5rem;color:#9e783c}.numbers>div>span{font-size:.75rem;color:var(--muted);margin-top:8px;text-align:center}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:50px}.section-heading .eyebrow,.quality-intro>.eyebrow,.contact-copy>.eyebrow{color:#877039;margin-bottom:20px}.section-heading>p{max-width:370px;color:var(--muted);font-size:.93rem}.reasons{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.reasons article{border-top:1px solid #bebfab;padding-top:25px}.number{color:#957c4c;font-size:.75rem;letter-spacing:.12em}.reasons h3{font-size:1.55rem;margin:20px 0 18px;line-height:1.4}.reasons p{color:var(--muted);font-size:.9rem;max-width:320px}.villas{background:#eceee6}.gallery-switch{display:inline-flex;border:1px solid #c7cbbd;padding:4px;flex-shrink:0;gap:3px;align-self:flex-end}.gallery-switch button{border:0;background:transparent;padding:10px 17px;font-size:.8rem;white-space:nowrap}.gallery-switch button.active{background:var(--ink);color:#fff}.villa-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.villa-image{position:relative;width:100%;padding:0;border:0;background:#242d23;aspect-ratio:1/1.06;overflow:hidden}.villa-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s,opacity .2s}.villa-image:hover img{transform:scale(1.045)}.view-image{position:absolute;bottom:18px;right:18px;background:#f7f7f0ec;color:var(--ink);font-size:.72rem;padding:8px 13px}.villa-no{position:absolute;top:18px;left:18px;color:#fff;background:#1b231bcc;padding:5px 10px;font-size:.7rem}.villa-info{display:flex;justify-content:space-between;align-items:center;margin-top:22px}.villa-info .eyebrow{color:#777b6c;font-size:.65rem}.villa-info h3{font-size:1.85rem;margin-top:5px}.villa-card>p{font-size:.84rem;color:#686e5e;margin:9px 0 16px}.villa-card .text-link{font-size:.78rem}.fine-print{font-size:.73rem;color:var(--muted);line-height:1.7}.villas>.fine-print{margin-top:30px}.quality{display:grid;grid-template-columns:1fr 1.1fr;gap:90px;background:var(--dark);color:#f0f1e9}.quality-intro>.eyebrow{color:var(--gold)}.quality h2 em{color:var(--gold)}.quality-intro>p:not(.eyebrow){color:#bcc3b4;max-width:360px;margin:24px 0}.quality .text-link{color:#e1c692}.brand-list{display:flex;flex-wrap:wrap;gap:18px 26px;margin-top:45px;padding-top:25px;border-top:1px solid #414739;max-width:390px;color:#d2d5c8;font-size:1.05rem;font-weight:600}.brand-list span{font-size:.84rem;align-self:center}.quality-details{padding-top:28px}details{border-top:1px solid #49513f}details:last-child{border-bottom:1px solid #49513f}summary{display:flex;align-items:center;gap:18px;padding:27px 0;cursor:pointer;list-style:none;font-size:1rem}summary::-webkit-details-marker{display:none}summary .number{color:var(--gold)}.plus{margin-left:auto;font-size:1.3rem;min-width:20px}.plus:after{content:'+'}details[open] .plus:after{content:'−'}details>div{padding:0 10px 28px 38px;color:#c2c9ba;font-size:.9rem}.detail-tag{display:inline-block;font-size:.68rem;letter-spacing:.04em;color:var(--gold);margin-top:18px}.location-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:55px}.map-panel{background:#e8eadf;border:1px solid #d6d9cb;display:flex;flex-direction:column}.map-top{padding:20px 23px;display:flex;justify-content:space-between;gap:10px;align-items:center}.map-top a{font-size:.72rem;border-bottom:1px solid #888e78}.map-panel iframe{width:100%;height:320px;border:0;filter:grayscale(.7)}.map-bottom{padding:21px 25px;display:flex;flex-direction:column}.map-bottom strong{font-family:var(--serif);font-weight:400;font-size:1.4rem}.map-bottom span{font-size:.8rem;color:#5a6150}.map-bottom small{font-size:.69rem;color:#67705b;margin-top:6px}.distances{padding-top:12px}.distances>.eyebrow{color:#7b805e}.distances dl{margin:15px 0}.distances dl>div{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:12px 0;border-bottom:1px solid var(--border)}dt{font-size:.85rem}dd{margin:0;font:400 1.55rem var(--serif);white-space:nowrap}dd span{font:.75rem Inter,Arial,sans-serif;color:var(--muted)}.distances .text-link{margin-top:25px}.contact{background:#e7eadf;display:grid;grid-template-columns:1fr 1.05fr;gap:80px}.contact-copy>p:not(.eyebrow){max-width:340px;color:#636b59;margin:25px 0 30px}.direct-contact{display:flex;flex-direction:column;align-items:flex-start;gap:7px;margin-top:38px}.direct-contact .eyebrow{color:#71785f}.phone{font-family:var(--serif);font-size:1.8rem}.phone span{font-family:Inter;font-size:1.4rem;margin-left:15px}.direct-contact>a:last-child{font-size:.85rem;color:#5c6452}.enquiry-form{background:#f9f9f3;padding:38px}.enquiry-form>.eyebrow{color:#868267;font-size:.65rem}.enquiry-form h3{font-size:2rem;margin:10px 0}.form-intro{font-size:.84rem;color:var(--muted);margin-bottom:25px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.enquiry-form label{display:block;font-size:.74rem;font-weight:500;margin:0 0 19px}.enquiry-form label>span{color:#946d3e}.enquiry-form label .optional{font-weight:400;font-size:.68rem;color:var(--muted)}input,select,textarea{display:block;width:100%;border:0;border-bottom:1px solid #c7cabb;border-radius:0;color:var(--ink);padding:11px 0;background:transparent;font-size:.82rem}input::placeholder,textarea::placeholder{color:#767b6c}textarea{resize:vertical;min-height:80px}select{padding-right:15px}.field-error{font-size:.71rem;color:#a1271c;display:block;margin-top:4px}[aria-invalid=true]{border-bottom:2px solid #ac3524}.privacy-note{font-size:.71rem;color:#69715e;margin:5px 0 20px;line-height:1.7}.dark{background:var(--ink);color:#fff}.submit-button{width:100%;justify-content:center;gap:12px}.submit-button img{filter:invert(1)}.submit-button>span{margin-left:auto}.selection{display:flex;justify-content:space-between;align-items:center;background:#e8eddb;font-size:.8rem;padding:6px 12px;margin:10px 0 20px}.selection button{background:none;border:0;font-size:1.4rem}.form-status{font-size:.82rem;line-height:1.6;padding:15px 0 5px;color:#3c5835}footer{background:#151915;color:#c2c9ba;padding:48px 5.5% 32px}.footer-main{display:grid;grid-template-columns:1.2fr 1fr .8fr 1.2fr;gap:30px;padding-bottom:35px;align-items:start}.footer-main .brand img{width:65px;height:65px}.footer-main .brand>span{font-size:1.2rem}.footer-main .brand small{font-size:.55rem}.footer-main p,.footer-main>div{font-size:.78rem;line-height:1.9}.footer-main>div{display:flex;flex-direction:column;gap:6px}.footer-main a:hover,.footer-bottom a:hover{color:var(--gold)}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #343e2e;padding:22px 0;font-size:.68rem;flex-wrap:wrap}.plain-button{background:none;border:0;padding:0;color:inherit;font-size:inherit}.plain-button:hover{color:var(--gold)}footer .fine-print{color:#8f9a84;font-size:.65rem}.floating-wa{position:fixed;bottom:24px;right:24px;z-index:15;background:#214c37;color:white;display:flex;align-items:center;gap:10px;padding:13px 20px;border-radius:30px;box-shadow:0 4px 25px #0003;font-size:.78rem;border:1px solid #a3b89255}.floating-wa img{filter:invert(1)}.floating-wa:hover{background:#176342;transform:translateY(-3px)}.mobile-bar{display:none}dialog{border:1px solid #d8dcca;background:var(--paper);color:var(--ink);padding:20px;width:min(950px,95vw);max-height:94dvh;overflow:auto}dialog::backdrop{background:#081109e6;backdrop-filter:blur(8px)}body.modal-open{overflow:hidden}.dialog-top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 0 15px}.dialog-top h2{font-size:1.6rem;letter-spacing:-.02em}.close-dialog{border:1px solid #bbc2ae;background:transparent;font-size:1.8rem;line-height:1;width:42px;height:42px;flex-shrink:0}.lightbox-image{position:relative;display:flex;justify-content:center;background:#1b2119}.lightbox-image img{width:100%;height:65dvh;object-fit:contain}.lightbox-image button{position:absolute;top:50%;transform:translateY(-50%);border:1px solid #ffffff90;background:#1b241bbb;color:white;width:44px;height:44px;font-size:1.4rem}#gallery-prev{left:12px}#gallery-next{right:12px}.dialog-bottom{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:16px 0}.dialog-bottom .gallery-switch{align-self:auto}#privacy-dialog{max-width:700px}.privacy-content{padding:15px 5px}.privacy-content h3{margin:20px 0 12px;font-size:1.5rem}.privacy-content p{font-size:.92rem;color:#606a54;margin:12px 0}.privacy-content a{text-decoration:underline}.reveal{animation:rise .7s ease both}@keyframes rise{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
@media(min-width:1600px){.hero-copy{padding-left:max(80px,calc((100vw - 1420px)/2))}.hero{min-height:760px}.hero-visual{min-height:760px}.section{padding-left:max(5.5vw,calc((100vw - 1420px)/2));padding-right:max(5.5vw,calc((100vw - 1420px)/2))}}
@media(max-width:1100px){nav{gap:19px;font-size:.76rem}.hero-copy{padding:50px 8%}.hero .eyebrow{font-size:.6rem}.hero-description{font-size:.86rem}.actions{gap:18px}.hero .btn{padding:16px;font-size:.76rem}.hero .text-link{font-size:.76rem}.hero-notes{margin-top:25px;gap:8px}.hero-notes span+span:before{margin-right:8px}.hero-visual,.hero{min-height:630px}.section{padding-top:75px;padding-bottom:75px}.section-heading>p{max-width:300px;font-size:.84rem}.contact,.quality{gap:40px}.enquiry-form{padding:26px}.footer-main{grid-template-columns:1fr 1fr}.location-grid{gap:30px}.gallery-switch button{padding:9px 12px}}
@media(max-width:800px){html{scroll-padding-top:85px}header{height:78px;padding:0 22px}.brand img{width:52px;height:52px}.brand>span{font-size:1.25rem}.brand small{font-size:.57rem}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;width:44px;height:44px;border:1px solid #bfc5b4;background:transparent}.menu-toggle span{width:20px;height:1px;background:var(--ink);margin:auto;transition:transform .2s}.menu-toggle span:first-child{margin-bottom:0}.menu-toggle span:last-child{margin-top:0}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}nav{display:none;position:absolute;top:78px;left:0;right:0;flex-direction:column;align-items:stretch;padding:20px 25px 25px;background:var(--paper);border-bottom:1px solid var(--border);box-shadow:0 10px 20px #0002;gap:0;font-size:.94rem}nav.open{display:flex}nav>a{padding:13px 4px}nav .nav-cta{margin-top:10px;padding:14px 20px;justify-content:space-between}.hero{grid-template-columns:1fr}.hero-copy{padding:45px 28px}.hero .eyebrow{font-size:.65rem}h1{font-size:4.5rem;max-width:600px}.hero-description{font-size:.93rem;max-width:510px}.hero-price{margin:20px 0}.hero-notes{font-size:.7rem}.hero-visual{min-height:480px;max-height:600px;aspect-ratio:1.2}.image-bottom{bottom:40px}.image-bottom p{font-size:1.6rem}.numbers{padding:30px 20px;gap:24px 0;grid-template-columns:1fr 1fr}.numbers>div:nth-child(2){border:0}.numbers strong{font-size:2.3rem}.numbers>div>span{font-size:.7rem}.section{padding:65px 25px}.section-heading{flex-direction:column;align-items:flex-start;gap:25px;margin-bottom:32px}.section-heading>p{max-width:550px;font-size:.93rem}.section-heading h2{font-size:2.6rem}.reasons{gap:24px}.reasons h3{font-size:1.25rem}.reasons p{font-size:.8rem}.gallery-switch{align-self:flex-start}.villa-grid{gap:22px;grid-template-columns:1fr}.villa-card{padding-bottom:25px;border-bottom:1px solid #c6cbbb}.villa-image{aspect-ratio:1.15}.villa-info h3{font-size:2rem}.villa-card>p,.villa-card .text-link{font-size:.9rem}.quality{grid-template-columns:1fr;gap:25px}.quality h2{font-size:3rem}.quality-intro>p:not(.eyebrow){max-width:520px}.brand-list{max-width:100%;margin-top:30px}.quality-details{padding-top:10px}.location-grid{grid-template-columns:1fr}.map-panel iframe{height:290px}.contact{grid-template-columns:1fr;gap:35px}.contact h2{font-size:3rem}.contact-copy>p:not(.eyebrow){max-width:460px}.direct-contact{margin-top:25px}.enquiry-form{padding:28px}.footer-main{gap:30px}.footer-bottom{gap:12px}footer{padding:40px 25px 120px}.floating-wa{bottom:91px;right:17px;padding:13px}.floating-wa>span{display:none}.mobile-bar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:18;background:var(--paper);border-top:1px solid var(--border);padding:12px 18px calc(12px + env(safe-area-inset-bottom));align-items:center;gap:10px;box-shadow:0 -5px 20px #0001}.mobile-bar>div{margin-right:auto}.mobile-bar small{display:block;font-size:.56rem;letter-spacing:.13em;color:#69715c}.mobile-bar strong{display:block;font-size:1.05rem;font-weight:500}.mobile-bar>a{font-size:.8rem;border:1px solid #c3c7b5;padding:10px 18px}.mobile-bar .gold{border-color:var(--gold)}.dialog-bottom{flex-wrap:wrap}.dialog-bottom .btn{font-size:.78rem}.lightbox-image img{height:56dvh}}
@media(max-width:480px){h1{font-size:3.8rem}.hero-copy{padding:40px 24px}.hero-visual{min-height:380px}.hero .eyebrow{font-size:.6rem;letter-spacing:.1em}.hero .btn{padding:16px 18px}.hero-notes{font-size:.62rem}.image-top,.image-bottom{left:20px;right:20px}.image-bottom p{font-size:1.35rem}.section-heading h2{font-size:2.2rem}.reasons{grid-template-columns:1fr;gap:28px}.reasons h3{font-size:1.55rem;margin:13px 0}.reasons p{font-size:.9rem;max-width:100%}.form-row{grid-template-columns:1fr;gap:0}.enquiry-form{padding:25px 20px}.enquiry-form label{font-size:.8rem}input,select,textarea{font-size:1rem}.enquiry-form h3{font-size:1.75rem}.quality h2,.contact h2{font-size:2.65rem}summary{font-size:.9rem;gap:11px}.map-top{flex-direction:column;align-items:flex-start}.footer-main{grid-template-columns:1fr}.footer-main p{font-size:.85rem}.footer-main>div{font-size:.85rem}.phone{font-size:1.6rem}.mobile-bar>a{padding:10px 14px}.dialog-top h2{font-size:1.3rem}.dialog-bottom .btn{width:100%}dialog{padding:15px}.gallery-switch button{font-size:.78rem}.hero-price strong{font-size:1.8rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
/* Reference-inspired motion, quality matrix and six-elevation coverflow. */
header .brand img{width:74px;height:74px}.hero{position:relative;isolation:isolate;background:#15140f}.hero-pattern{position:absolute;inset:0;z-index:-1;overflow:hidden;background:radial-gradient(ellipse at 65% 30%,#a5872d20,transparent 65%)}.hero-pattern:before{content:'';position:absolute;inset:-100px;background:repeating-linear-gradient(115deg,transparent 0 22px,#d3b76509 23px 39px,transparent 40px 62px);animation:stripe-drift 18s linear infinite}.hero-copy{position:relative}.hero-visual{margin:35px 30px 35px 0;min-height:580px;outline:1px solid #c2a45c65;outline-offset:9px}.motion-toggle{position:absolute;bottom:12px;left:5.5%;z-index:2;background:#15140fbd;border:1px solid #a28b4b70;color:#e6d4a4;padding:5px 12px;font-size:.72rem;min-height:32px}.brand-marquee{overflow:hidden;background:#14130f;color:#d2c2a2;border-top:1px solid #9c834a33;border-bottom:1px solid #9c834a33;padding:20px 0}.marquee-track{display:flex;width:max-content;animation:brand-scroll 30s linear infinite}.marquee-track>div{display:flex;align-items:center;gap:55px;padding-right:55px;flex-shrink:0}.marquee-track span{font:400 1.35rem var(--serif);letter-spacing:.06em;white-space:nowrap}.marquee-track i{font-style:normal;font-size:.65rem;color:var(--gold)}.brand-marquee:hover .marquee-track,.brand-marquee:focus-within .marquee-track{animation-play-state:paused}.motion-paused .hero-pattern:before,.motion-paused .marquee-track{animation-play-state:paused}@keyframes stripe-drift{to{transform:translateX(68px)}}@keyframes brand-scroll{to{transform:translateX(-50%)}}
.quality{display:block;background:#14130f}.quality .section-heading>p{max-width:470px;color:#b7b3a7}.quality .section-heading .eyebrow{color:var(--gold)}.quality-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid #575144;border-left:1px solid #575144}.quality-cell{padding:28px 23px;border-right:1px solid #575144;border-bottom:1px solid #575144;transition:background .25s}.quality-cell:hover{background:#c5a5600b}.quality-cell .number{color:#ad965e}.quality-cell h3{font-size:1.25rem;line-height:1.4;margin:14px 0 12px}.quality-cell p{font-size:.88rem;line-height:1.8;color:#b6b2a7}.quality-grid-cta{grid-column:span 3;background:#302c23;border-right:1px solid #575144;border-bottom:1px solid #575144;display:flex;flex-direction:column;justify-content:center;gap:16px;padding:30px}.quality-grid-cta .eyebrow{color:#d9bd80}.quality-grid-cta strong{font:400 1.8rem var(--serif)}.quality-grid-cta>span:last-child{font-size:.9rem;color:var(--gold)}.quality-grid-cta:hover{background:#3b3529}.quality-signoff{text-align:center;font:italic 400 clamp(1.3rem,2.5vw,2.2rem)/1.5 var(--serif);color:var(--gold);margin:40px 0 18px}.quality>.fine-print{text-align:center;color:#b6b2a7}
.villas{background:#f7f6f2;overflow:hidden}.villa-carousel{height:550px;position:relative;perspective:1300px;touch-action:pan-y;isolation:isolate;outline-offset:-3px}.carousel-card{position:absolute;left:50%;top:20px;width:40%;height:470px;margin:0;padding:0;border:1px solid #a79e8a;background:#242820;overflow:hidden;transform:translateX(-50%);transition:transform .65s cubic-bezier(.22,.8,.2,1),opacity .65s,filter .65s;box-shadow:0 25px 35px #29261620;user-select:none;touch-action:pan-y}.carousel-card img{width:100%;height:100%;object-fit:cover;pointer-events:none}.carousel-caption{position:absolute;inset:auto 0 0;padding:60px 23px 21px;display:flex;align-items:end;justify-content:space-between;color:white;background:linear-gradient(transparent,#0c100bdd);pointer-events:none}.carousel-caption strong{font:400 1.6rem var(--serif)}.carousel-caption small{color:#e4ca89;font-size:.73rem;letter-spacing:.18em}.carousel-card[data-offset="0"]{transform:translateX(-50%);z-index:5;opacity:1}.carousel-card[data-offset="-1"]{transform:translateX(-88%) scale(.84) rotateY(15deg);z-index:4;filter:brightness(.75)}.carousel-card[data-offset="1"]{transform:translateX(-12%) scale(.84) rotateY(-15deg);z-index:4;filter:brightness(.75)}.carousel-card[data-offset="-2"]{transform:translateX(-120%) scale(.67) rotateY(22deg);z-index:3;filter:brightness(.65);opacity:.7}.carousel-card[data-offset="2"]{transform:translateX(20%) scale(.67) rotateY(-22deg);z-index:3;filter:brightness(.65);opacity:.7}.carousel-card[data-offset="3"]{transform:translateX(-50%) scale(.5);z-index:1;opacity:0;pointer-events:none}.carousel-toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px}.carousel-toolbar>div:first-child{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.carousel-hint{font-size:.66rem;color:#797363}.carousel-navigation{display:flex;align-items:center;gap:20px}.carousel-arrow{width:50px;height:50px;flex-shrink:0;background:transparent;border:1px solid #c6c1b5;font-size:1.4rem}.carousel-arrow:hover{background:var(--gold)}#carousel-label{font:400 1.15rem var(--serif);min-width:175px;text-align:center}.carousel-dots{display:flex;gap:3px;justify-content:center;margin:26px 0 8px}.carousel-dots button{width:32px;height:36px;border:0;background:transparent;position:relative}.carousel-dots button:after{content:'';position:absolute;width:7px;height:7px;border-radius:50%;background:#b9b2a2;left:50%;top:50%;transform:translate(-50%,-50%)}.carousel-dots button[aria-pressed=true]:after{width:22px;border-radius:5px;background:#8d723e}.lightbox-image{touch-action:pan-y}
@media(max-width:1100px){.hero-visual{min-height:570px;margin:25px 20px 25px 0}.quality-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.quality-grid-cta{grid-column:span 3}.carousel-card{width:46%;height:410px}.villa-carousel{height:475px}.carousel-toolbar{flex-wrap:wrap}.carousel-toolbar>div:first-child{gap:15px}}
@media(max-width:800px){header .brand img{width:62px;height:62px}.hero-visual{margin:15px 25px 40px;min-height:440px;max-height:none}.motion-toggle{top:15px;bottom:auto;left:auto;right:20px;min-height:30px}.hero-copy{padding-top:62px}.brand-marquee{padding:17px 0}.marquee-track>div{gap:30px;padding-right:30px}.marquee-track span{font-size:1.1rem}.quality-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quality-grid-cta{grid-column:span 2}.quality-cell{padding:24px 20px}.quality-cell h3{font-size:1.22rem}.quality-cell p{font-size:.9rem}.villa-carousel{height:440px;margin:0 -25px}.carousel-card{width:64%;height:380px}.carousel-card[data-offset="-1"]{transform:translateX(-84%) scale(.85) rotateY(12deg)}.carousel-card[data-offset="1"]{transform:translateX(-16%) scale(.85) rotateY(-12deg)}.carousel-caption{padding:45px 18px 18px}.carousel-caption strong{font-size:1.4rem}.carousel-toolbar{justify-content:center;flex-direction:column-reverse;gap:22px}.carousel-toolbar>div:first-child{flex-direction:column-reverse;gap:18px;width:100%}.carousel-toolbar .btn{width:100%;max-width:420px}.carousel-navigation{width:100%;justify-content:space-between;gap:8px}.carousel-arrow{width:48px;height:48px}.carousel-dots{margin-top:14px}.villas>.fine-print{text-align:center}.quality-grid-cta strong{font-size:1.5rem}}
@media(max-width:480px){.hero-visual{min-height:350px;margin:10px 24px 35px}.hero-copy{padding-top:62px}.quality-cell{padding:20px 15px}.quality-cell h3{font-size:1.12rem}.quality-cell p{font-size:.85rem}.quality-grid-cta{padding:25px 20px}.villa-carousel{height:360px}.carousel-card{height:310px;width:70%;top:10px}.carousel-caption strong{font-size:1.2rem}.carousel-caption small{font-size:.65rem}.carousel-hint{font-size:.6rem;letter-spacing:.1em}#carousel-label{min-width:0;font-size:1.05rem}.quality-signoff{margin-top:30px}}
@media(prefers-reduced-motion:reduce){.hero-pattern:before,.marquee-track{animation:none!important}.carousel-card{transition:none!important}}

/* Additional ambient motion and interaction feedback. */
.hero-visual>img{animation:hero-breathe 22s ease-in-out infinite alternate;will-change:transform}
.image-tag{animation:badge-float 7s ease-in-out infinite}
.image-tag i{animation:status-glow 3s ease-in-out infinite}
.reveal{animation-delay:var(--reveal-delay,0ms)}
.quality-cell{position:relative;overflow:hidden}
.quality-cell:after{content:'';position:absolute;bottom:0;left:0;width:100%;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .4s ease}
.quality-cell:hover:after{transform:scaleX(1)}
.btn>span,.nav-cta>span,.text-link>span{display:inline-block;transition:transform .25s ease}
.btn:hover>span,.nav-cta:hover>span,.text-link:hover>span{transform:translate(3px,-2px)}
.motion-paused .hero-visual>img,.motion-paused .image-tag,.motion-paused .image-tag i{animation-play-state:paused}
@keyframes hero-breathe{from{transform:scale(1)}to{transform:scale(1.055)}}
@keyframes badge-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@keyframes status-glow{0%,100%{box-shadow:0 0 0 0 #d8b67600}50%{box-shadow:0 0 0 5px #d8b67618}}
@media(max-width:800px){.hero-visual>img{animation-duration:28s}}
@media(prefers-reduced-motion:reduce){.hero-visual>img,.image-tag,.image-tag i{animation:none!important;will-change:auto}}

.hero-visual>.hero-back{z-index:0}.hero-visual>#hero-image{z-index:0}.hero-slide-controls{position:absolute;right:25px;top:85px;display:flex;gap:8px;z-index:3}.hero-slide-controls button{display:grid;place-items:center;width:44px;height:44px;background:#171b17b8;border:1px solid #dbc49088;color:#fff;font-size:1.3rem;backdrop-filter:blur(8px)}.hero-slide-controls button:hover{background:var(--gold);color:var(--ink)}
@media(max-width:800px){.hero-slide-controls{right:20px;top:78px}}

/* Unified charcoal, white and gold identity. */
:root{--ink:#191919;--dark:#171717;--paper:#faf9f6;--gold:#d8b676}
header{background:#171717f7;color:#f5f1e8;border-bottom:1px solid #a78b5266}
header .brand{color:#d8b676}header .brand small{color:#e4ddd0}header .brand img{border:1px solid #79664955}
nav>a:not(.nav-cta):hover{color:#e0bf7e}.nav-cta{background:var(--gold);color:#171717}.nav-cta:hover{background:#edce97}
.menu-toggle{border-color:#8b7750}.menu-toggle span{background:#e7cf9d}
.reasons{gap:0;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #d8d1c3;border-left:1px solid #d8d1c3}
.reasons article{padding:30px;border-top:0;border-right:1px solid #d8d1c3;border-bottom:1px solid #d8d1c3;transition:background .25s}
.reasons article:nth-child(2){background:#f1ede4}.reasons article:hover{background:#eee7da}.reasons h3{font-size:1.55rem;line-height:1.35}.reasons p{max-width:none;font-size:.94rem}
footer{background:#171717}.footer-main .brand{color:#d8b676}.footer-main .brand small{color:#e4ddd0}
.floating-wa{background:#171717;color:#fff;border:1px solid #a78b5266;padding:8px 16px 8px 8px;border-radius:40px;bottom:95px}
.floating-wa img{width:46px;height:46px;filter:none}.floating-wa:hover{background:#2a261f}
.submit-button img{filter:none;width:28px;height:28px}
.mobile-bar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:18;background:#171717;color:#fff;border-top:1px solid #a78b5266;padding:12px 5.5% calc(12px + env(safe-area-inset-bottom));align-items:center;gap:12px;box-shadow:0 -5px 20px #0002}
.mobile-bar>div{margin-right:auto}.mobile-bar small{display:block;color:#ddc596;font-size:.63rem;letter-spacing:.13em}.mobile-bar strong{display:block;font-size:1.05rem;font-weight:500}.mobile-bar>a{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:.84rem;border:1px solid #81765f;padding:10px 18px;min-height:46px}.mobile-bar .gold{color:#171717;border-color:var(--gold)}.mobile-bar .bottom-whatsapp{background:#202520;color:#fff}.bottom-whatsapp img{filter:none;object-fit:contain}.mobile-bar>a:hover{border-color:var(--gold)}
footer{padding-bottom:115px}
@media(max-width:800px){nav{background:#171717;color:#f5f1e8;border-bottom-color:#8b7750}.reasons{grid-template-columns:repeat(2,minmax(0,1fr))}.reasons article{padding:24px}.reasons h3{font-size:1.35rem}.mobile-bar{padding:10px 16px calc(10px + env(safe-area-inset-bottom));gap:8px}.mobile-bar>a{padding:8px 12px;font-size:.78rem}.bottom-whatsapp span{display:none}.floating-wa{bottom:94px;right:16px;padding:4px;border:0}.floating-wa img{width:49px;height:49px}.floating-wa>span{display:none}}
@media(max-width:480px){.reasons{grid-template-columns:1fr}.reasons article{padding:25px}.reasons h3{font-size:1.55rem}.reasons p{font-size:1rem}.mobile-bar{gap:6px;padding-left:12px;padding-right:12px}.mobile-bar>a{padding:8px 10px}.mobile-bar strong{font-size:.95rem}.mobile-bar .bottom-whatsapp{padding:6px;min-width:44px}.mobile-bar small{font-size:.56rem}.quality-grid{grid-template-columns:1fr}.quality-grid-cta{grid-column:auto}.quality-cell h3{font-size:1.4rem}.quality-cell p{font-size:1rem}.quality-cell{padding:24px}}

/* Requested black header and white lettering. */
header{background:#000;color:#fff;border-bottom:1px solid #333}
header .brand,header .brand small,header nav>a{color:#fff}
header .nav-cta{background:#171717;color:#fff;border:1px solid #666}
header .nav-cta:hover{background:#303030;color:#fff}
header nav>a:not(.nav-cta):hover{color:#fff;text-decoration:underline;text-underline-offset:5px}
header .menu-toggle{border-color:#777}header .menu-toggle span{background:#fff}
@media(max-width:800px){header nav{background:#000;color:#fff;border-bottom-color:#333}}
