@import url('/assets/fonts.css');
:root{--ink:#292c27;--forest:#303d33;--paper:#faf9f6;--sand:#f0eee8;--gold:#8c7753;--muted:#64665f;--line:#d8d5cd;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Manrope',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:155px}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.9 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer;color:inherit}button,a,input,textarea,select,summary{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--gold);outline-offset:5px}img{display:block;width:100%;height:auto}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{font-family:var(--serif);font-weight:400;line-height:1.08}h1{font-size:clamp(50px,5.5vw,84px);letter-spacing:-.025em}h2{font-size:clamp(40px,4.1vw,62px);letter-spacing:-.025em}h3{font-size:34px;letter-spacing:-.015em}p+p{margin-top:18px}em{font-weight:400}::selection{background:#e2dbc9}.wrap{width:100%;max-width:1392px;margin:auto;padding-left:70px;padding-right:70px}.section{padding-top:112px;padding-bottom:112px}.eyebrow{display:block;font-size:10px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;margin-bottom:22px;line-height:1.7}.lead{font-size:16px;line-height:1.9}.small{font-size:12px;line-height:1.8}.muted{color:var(--muted)}.soft{background:var(--sand)}.arrow{font:18px/1 Arial,sans-serif;transition:transform .25s}.text-link{display:inline-flex;align-items:center;gap:28px;border:0;border-bottom:1px solid var(--gold);background:transparent;padding:12px 0 8px;font:600 10px/1.7 var(--sans);letter-spacing:.12em;text-transform:uppercase}.text-link:hover .arrow{transform:translate(3px,-3px)}.button{display:inline-flex;align-items:center;justify-content:center;gap:35px;border:1px solid var(--ink);padding:17px 25px;min-height:52px;background:var(--ink);color:#fff;font:600 10px/1.5 var(--sans);letter-spacing:.13em;text-transform:uppercase;transition:background .2s}.button:hover{background:#4b5147}.button.light{background:var(--paper);color:var(--ink);border-color:var(--paper)}.button.outline{background:transparent;color:var(--ink)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:45px;margin-bottom:45px}.section-head>p{max-width:375px;color:var(--muted);font-size:13px}.section-head .eyebrow{margin-bottom:14px}.center-link{text-align:center;margin-top:45px}.skip{position:fixed;top:-100px;left:15px;background:#fff;z-index:100;padding:12px}.skip:focus{top:12px}[hidden]{display:none!important}.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}
/* A composed masthead, shared by every page. */
.site-header{position:sticky;top:0;z-index:30;background:#faf9f6fa;border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.masthead{height:96px;display:flex;justify-content:center;align-items:center;position:relative;margin:0 44px}.brand{display:flex;flex-direction:column;align-items:center;line-height:1}.brand-name{font:400 36px/1 var(--serif);letter-spacing:.18em;padding-left:.18em}.brand-caption{font:500 8px/1.5 var(--sans);letter-spacing:.29em;margin-top:9px;padding-left:.29em}.header-location{position:absolute;left:0;font-size:9px;letter-spacing:.16em;text-transform:uppercase}.header-action{position:absolute;right:0;display:flex;align-items:center;gap:24px;background:none;border:1px solid var(--gold);padding:12px 21px;min-height:44px;font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.13em}.header-action:hover{background:var(--sand)}.nav{height:47px;display:flex;justify-content:center;gap:43px;align-items:center;border-top:1px solid #e4e2db}.nav>a{height:100%;display:flex;align-items:center;position:relative;font-size:9px;letter-spacing:.1em;text-transform:uppercase}.nav>a:after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--gold);transform:scaleX(0);transition:transform .2s}.nav>a:hover:after,.nav>a[aria-current=page]:after{transform:scaleX(1)}.nav .mobile-contact{display:none}.menu-toggle{display:none}
/* Opening sequence. The images only change when a visitor chooses. */
.hero{position:relative;height:calc(100svh - 144px);min-height:560px;max-height:900px;color:white;isolation:isolate}.hero-slides,.hero-slide,.hero-slide img{position:absolute;inset:0;width:100%;height:100%}.hero-slide img{object-fit:cover;object-position:center 56%}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#09150b0d,#0b130e38 40%,#0b160e9e);z-index:0}.hero-content{position:relative;z-index:1;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:45px 25px 110px}.hero-content .eyebrow{font-size:10px;text-shadow:0 1px 8px #0009}.hero h1{font-size:clamp(66px,7vw,104px);line-height:.98;letter-spacing:-.025em;text-shadow:0 1px 25px #15201730}.hero-content p{font-size:12px;letter-spacing:.06em;margin-top:27px;text-shadow:0 1px 10px #0008}.hero-link{display:inline-flex;gap:35px;align-items:center;color:white;border-bottom:1px solid #ffffffa0;padding:11px 0;font-size:9px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;margin-top:30px}.hero-bottom{position:absolute;bottom:26px;left:44px;right:44px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;z-index:1;gap:25px;font-size:9px;letter-spacing:.06em}.hero-photo-caption{max-width:250px}.hero-controls{display:flex;align-items:center;gap:13px}.hero-controls>button{color:white;border:0;background:none;min-width:36px;height:38px;font-size:20px;padding:0}.hero-controls>.slide-dot{height:28px;min-width:22px;position:relative}.slide-dot:after{content:'';position:absolute;left:2px;right:2px;top:13px;height:2px;background:#ffffff65}.slide-dot[aria-pressed=true]:after{background:#fff}.scroll-link{justify-self:end;display:flex;align-items:center;gap:25px;text-transform:uppercase;letter-spacing:.14em}.scroll-link span{font-size:23px}.property-line{display:flex;align-items:center;justify-content:center;gap:40px;padding:23px 20px;border-bottom:1px solid var(--line);font-size:9px;text-transform:uppercase;letter-spacing:.14em}.property-line i{height:3px;width:3px;background:var(--gold);border-radius:50%}.welcome{text-align:center;max-width:1080px}.welcome h2{font-size:clamp(40px,4.2vw,62px);line-height:1.16}.welcome p{max-width:700px;margin:30px auto 22px;color:var(--muted);font-size:14px}.ornament{display:block;color:var(--gold);font-size:30px;margin-top:45px;line-height:1}.collection-section{background:var(--sand)}.collection-tabs{display:flex;gap:34px;border-bottom:1px solid #cecac0;margin-bottom:35px}.collection-tabs button{border:0;background:none;border-bottom:2px solid transparent;padding:14px 5px;font:600 10px var(--sans);letter-spacing:.13em;text-transform:uppercase;min-height:45px}.collection-tabs button[aria-pressed=true]{border-color:var(--gold)}.collection-slide{display:grid;grid-template-columns:1.25fr 1fr;gap:70px;align-items:center}.collection-photo{overflow:hidden}.collection-photo img{height:480px;object-fit:cover}.collection-copy h3{font-size:57px}.collection-copy .eyebrow{font-size:9px}.collection-copy p{font-size:13px;color:var(--muted);margin:22px 0}.collection-copy .collection-tag{font:italic 27px/1.2 var(--serif);color:var(--ink);margin:12px 0 22px}.mini-facts{display:flex;gap:24px;font-size:10px;border-top:1px solid var(--line);padding-top:20px;margin-bottom:10px}.editorial{display:grid;grid-template-columns:1fr 1fr;gap:110px;align-items:center}.editorial-photo img{height:600px;object-fit:cover}.image-caption{display:block;margin-top:14px;font:italic 20px var(--serif);color:var(--muted)}.editorial-copy{max-width:410px}.editorial-copy p{margin-top:25px;color:var(--muted)}.editorial-copy .text-link{margin-top:25px}.immersive{position:relative;height:630px;isolation:isolate;color:white;display:flex;align-items:center}.immersive>div:first-child{position:absolute;inset:0;z-index:-1}.immersive img{height:100%;object-fit:cover;object-position:center 55%}.immersive:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#09170dcc,#10211619 80%);z-index:-1}.immersive-copy{padding:60px max(70px,calc((100vw - 1252px)/2));}.immersive h2{font-size:clamp(55px,6vw,86px)}.journal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:33px}.story-image{overflow:hidden}.story-image img{height:320px;object-fit:cover;transition:transform .7s}.story-card:hover img{transform:scale(1.025)}.story-caption{padding-top:25px}.story-caption .eyebrow{font-size:9px;margin-bottom:12px;color:var(--gold)}.story-caption h3{font-size:32px}.story-caption p{font-size:12px;color:var(--muted);margin:15px 0}.story-caption .text-link{font-size:9px}.ratings{background:#eeeee7;padding:65px 0}.ratings-inner{display:grid;grid-template-columns:1.2fr .8fr .9fr;gap:65px;align-items:center}.ratings h2{font-size:38px}.ratings .eyebrow{font-size:8px;margin-bottom:15px}.rating-main{text-align:center}.stars{font-size:11px;letter-spacing:4px;color:var(--gold)}.rating-number{font:66px/1.1 var(--serif);margin-top:12px}.rating-number span{font:24px var(--serif);margin-left:8px}.rating-main p{font-size:10px;margin-top:9px}.review-total{font-size:10px;color:var(--muted)}.rating-links{display:flex;align-items:start;flex-direction:column;gap:12px}.rating-links .text-link{font-size:8px}.rating-method{font-size:10px;color:var(--muted)}.rating-method summary{cursor:pointer;padding:8px 0}.rating-method p{margin-top:8px;max-width:320px;font-size:10px;line-height:1.7}.cta{display:grid;grid-template-columns:1fr 1fr;background:#e5e3d9;min-height:510px}.cta-image img{width:100%;height:100%;min-height:510px;object-fit:cover}.cta-inner{padding:70px;text-align:center;align-self:center}.cta-inner p{font-size:13px;color:var(--muted);margin:24px 0 28px}.cta h2{font-size:58px}.footer{background:#252c25;color:#f6f5ed;padding:65px 0 25px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:50px;padding-bottom:50px;border-bottom:1px solid #ffffff30}.footer-top p{font:italic 29px/1.2 var(--serif);color:#d4d5c9}.footer-contact{font-size:10px;text-transform:uppercase;letter-spacing:.1em;border-bottom:1px solid #9da58d;padding-bottom:9px;display:flex;gap:25px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:50px;padding:48px 0}.footer-grid h4,.footer-grid .eyebrow{font:500 9px var(--sans);text-transform:uppercase;letter-spacing:.15em;margin-bottom:20px;color:#c5c9b9}.footer-grid a{display:block;font-size:11px;color:#c8ccbf;line-height:2.2}.footer-grid a:hover{color:#fff;text-decoration:underline}.footer-grid p{font-size:11px;margin-bottom:14px;color:#c8ccbf}.footer-bottom{display:flex;gap:25px;justify-content:space-between;border-top:1px solid #ffffff25;padding-top:22px;font-size:9px;color:#aab2a0}
/* Inner pages: strong titles, generous images and useful detail. */
.page-head{padding-top:55px;padding-bottom:65px;text-align:center}.breadcrumb{display:flex;justify-content:center;gap:12px;font-size:9px;color:var(--muted);margin-bottom:35px;line-height:1.6}.breadcrumb a{text-decoration:underline;text-underline-offset:3px}.page-head h1{max-width:1000px;margin:auto}.page-head .eyebrow{color:var(--gold);margin-bottom:18px}.page-head .lead{max-width:660px;margin:25px auto 0;font-size:14px;color:var(--muted)}.page-photo{height:550px;object-fit:cover}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.intro-grid>div>img,.intro-grid>img{height:520px;object-fit:cover}.intro-copy{max-width:520px}.intro-copy h2{margin-bottom:28px}.intro-copy p{font-size:13px;color:var(--muted)}.intro-copy .text-link{margin-top:25px}.quote-section{text-align:center;padding:100px 30px}.quote-section h2{font-size:52px;font-style:italic}.quote-section p{margin-top:24px;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.collection-banner{height:390px;position:relative;isolation:isolate;display:flex;align-items:end;justify-content:center;color:#fff}.collection-banner>img{position:absolute;height:100%;object-fit:cover;object-position:center 57%;z-index:-1}.collection-banner:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent,#1f26106e);z-index:-1}.collection-banner>span{font:italic 34px var(--serif);padding:35px 20px;text-align:center}.toolbar{display:flex;gap:30px;flex-wrap:wrap;margin-bottom:50px;align-items:center;border-bottom:1px solid var(--line)}.chip{border:0;border-bottom:2px solid transparent;background:transparent;padding:13px 2px;min-height:48px;font-size:10px;letter-spacing:.06em}.chip[aria-pressed=true]{border-bottom-color:var(--gold);font-weight:700}.chip:hover{color:var(--gold)}.results-count{margin-left:auto;font-size:10px;color:var(--muted)}.catalog{display:grid;gap:85px}.catalog-item{display:grid;grid-template-columns:1.1fr 1fr;gap:65px;align-items:center;padding-bottom:85px;border-bottom:1px solid var(--line)}.catalog-item:nth-child(even) .catalog-photo{order:2}.catalog-photo{position:relative;overflow:hidden}.catalog-photo img{height:445px;object-fit:cover;transition:transform .7s}.catalog-photo:hover img{transform:scale(1.025)}.photo-index{position:absolute;left:20px;bottom:16px;color:white;font:30px var(--serif);text-shadow:0 1px 6px #000}.catalog-copy .eyebrow{font-size:9px;margin-bottom:15px}.catalog-copy p{font-size:13px;color:var(--muted);margin:24px 0}.catalog-facts{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:30px 0}.catalog-facts>div:last-child{grid-column:1/-1}.catalog-facts dt{font-size:8px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.catalog-facts dd{margin:7px 0 0;font-size:12px}.catalog-actions{display:flex;gap:34px}.compare{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:50px}.compare summary{padding:24px 0;display:flex;justify-content:space-between;cursor:pointer;font:32px var(--serif)}.compare summary:after{content:'+'}.compare[open] summary:after{content:'−'}.table-scroll{overflow:auto;padding-bottom:20px}table{border-collapse:collapse;min-width:700px;width:100%;text-align:left;font-size:12px}caption{text-align:left;font-size:11px;color:var(--muted);padding-bottom:10px}th,td{border-bottom:1px solid var(--line);padding:20px 14px;vertical-align:top}th{font-size:9px;text-transform:uppercase;letter-spacing:.08em}td a{text-decoration:underline}.note{font-size:12px;color:var(--muted);padding:22px 25px;border-left:1px solid var(--gold);background:var(--sand);margin-top:30px;line-height:1.8}.villa-title{padding-top:35px;padding-bottom:45px;text-align:center}.villa-title .breadcrumb{margin-bottom:25px}.villa-title .eyebrow{font-size:9px;margin-bottom:12px;color:var(--gold)}.villa-title p{margin-top:16px;color:var(--muted);font-size:12px}.villa-hero{height:560px;position:relative;margin:0 30px}.villa-hero>img{height:100%;object-fit:cover;object-position:center 55%}.image-gallery-link{position:absolute;right:28px;bottom:25px;background:#faf9f6ef;padding:15px 22px;display:flex;align-items:center;gap:30px;text-transform:uppercase;font-size:9px;letter-spacing:.08em}.villa-summary{display:flex;gap:30px;justify-content:space-between;align-items:center;padding-top:32px;padding-bottom:32px;border-bottom:1px solid var(--line)}.villa-summary span{display:block;font-size:8px;text-transform:uppercase;letter-spacing:.13em;color:var(--muted)}.villa-summary strong{display:block;font-size:12px;font-weight:400;margin-top:7px}.villa-overview{display:grid;grid-template-columns:1.4fr .8fr;gap:100px}.villa-overview h2{margin-bottom:26px}.villa-overview .lead{font-size:15px;color:var(--muted)}.amenities-title{margin-top:44px;font-size:32px}.amenities{display:grid;grid-template-columns:1fr 1fr;list-style:none;padding:0;margin:25px 0;gap:0 35px}.amenities li{font-size:12px;padding:15px 0;border-bottom:1px solid var(--line)}.amenities li:before{content:'+';color:var(--gold);margin-right:12px}.villa-overview .text-link{margin-top:25px}.stay-card{background:var(--sand);border-top:2px solid var(--gold);padding:36px;align-self:start;position:sticky;top:175px}.stay-card h3{font-size:37px;margin-bottom:24px}.stay-card p{font-size:12px;color:var(--muted)}.stay-card .button{width:100%;margin-top:25px}.stay-card .text-link{width:100%;justify-content:space-between;font-size:9px;margin-top:12px}.stay-card .small{margin-top:22px;font-size:10px}.practical-note{border-bottom:1px solid var(--line);border-top:1px solid var(--line);padding:20px 0;font-size:12px}.practical-note summary{cursor:pointer;font-size:12px}.practical-note p{max-width:860px;margin-top:20px;color:var(--muted)}.photo-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:25px}.photo-grid .gallery-item:first-child{grid-column:1/-1}.photo-grid img{height:370px;object-fit:cover}.photo-grid .gallery-item:first-child img{height:570px}.gallery-item{padding:0;border:0;background:none;position:relative;overflow:hidden;display:block;width:100%;color:#fff}.gallery-item img{transition:transform .7s}.gallery-item:hover img{transform:scale(1.025)}.zoom{position:absolute;right:18px;bottom:18px;display:grid;place-items:center;width:38px;height:38px;border:1px solid #ffffff85;background:#18231788;font-size:20px}.gallery-masonry{columns:3;column-gap:25px}.gallery-masonry .gallery-item{margin-bottom:25px;break-inside:avoid}.gallery-masonry .gallery-item:nth-child(4n) img{aspect-ratio:3/4;object-fit:cover}.other-villas{padding-bottom:80px}.lightbox{border:0;padding:0;background:#1b211c;color:#fff;max-width:95vw;width:1200px;max-height:95svh;overflow:hidden}.lightbox::backdrop,.booking-dialog::backdrop{background:#111a13d9;backdrop-filter:blur(8px)}.lightbox>img{height:77svh;width:100%;object-fit:contain}.lightbox-bar{padding:12px 22px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:11px}.lightbox button{background:#152318b8;color:#fff;border:1px solid #ffffff70;min-width:44px;min-height:44px;font-size:20px}.lightbox-controls{display:flex;gap:10px}.lightbox-close{position:absolute;right:15px;top:15px}.facility-grid{display:grid;grid-template-columns:.85fr 1.2fr;gap:100px}.facility-block{border-top:1px solid var(--line);padding:34px 0}.facility-block:first-child{border-top:0;padding-top:0}.facility-block h3{margin-bottom:20px}.facility-block ul{padding-left:17px;line-height:2.4;font-size:13px;color:var(--muted)}.experience-band{display:grid;grid-template-columns:1.1fr 1fr;background:var(--sand)}.experience-band>img{height:100%;min-height:550px;object-fit:cover}.experience-copy{padding:75px 70px;align-self:center}.experience-copy p{font-size:13px;color:var(--muted);margin-top:25px}.experience-copy .text-link{margin-top:25px}
/* An island journal, with useful links instead of fixed stale promises. */
.guide-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.guide-card{position:relative;display:block;height:440px;color:white;isolation:isolate}.guide-card>img{height:100%;object-fit:cover}.guide-card:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent,#162311bd);z-index:0}.guide-copy{position:absolute;bottom:35px;left:35px;right:35px;z-index:1}.guide-copy h3{font-size:45px}.guide-copy>.arrow{position:absolute;right:0;bottom:10px}.guide-copy .eyebrow{font-size:9px;margin-bottom:12px}.guide-nav{position:sticky;top:144px;z-index:10;background:#faf9f6f5;border-top:1px solid var(--line);border-bottom:1px solid var(--line);backdrop-filter:blur(8px)}.guide-nav .wrap{display:flex;gap:35px;overflow:auto;white-space:nowrap}.guide-nav a{font-size:9px;letter-spacing:.08em;text-transform:uppercase;padding:18px 0}.guide-nav a:hover{text-decoration:underline}.guide-section{display:grid;grid-template-columns:.75fr 1.35fr;gap:90px;padding:80px 0;border-bottom:1px solid var(--line);scroll-margin-top:65px}.guide-section h2{font-size:47px}.guide-section .eyebrow{font-size:9px}.guide-body h3{font-size:31px;margin:33px 0 18px}.guide-body h3:first-child{margin-top:0}.guide-body p,.guide-body ul{font-size:13px;color:var(--muted)}.guide-body ul{padding-left:18px}.guide-body img{max-height:440px;object-fit:cover;margin:30px 0}.guide-body .text-link{font-size:9px;margin:8px 25px 20px 0}.guide-body .source-links{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:12px}.guide-body .source-links a{font-size:10px;text-decoration:underline;text-underline-offset:4px}.guide-intro{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding-bottom:70px}.guide-intro img{height:460px;object-fit:cover}.guide-intro h2{font-size:43px;margin-bottom:22px}.guide-intro p{font-size:13px;color:var(--muted)}.guide-index{display:flex;gap:20px;flex-wrap:wrap;margin-top:25px}.guide-updated{font-size:9px;letter-spacing:.05em;color:var(--muted);margin-top:24px}.guide-overview-cards{margin-top:50px}.guide-overview-cards .journal-grid{grid-template-columns:1fr 1fr}.guide-overview-cards .story-image img{height:380px}.guide-essentials{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin:30px 0}.guide-essentials>div{border-top:1px solid var(--gold);padding:25px 0}.guide-essentials h3{font-size:28px;margin-bottom:20px}.guide-essentials p{font-size:12px;color:var(--muted)}.restaurant-search{background:transparent;border:0;border-bottom:1px solid var(--line);padding:13px 0;min-height:48px;min-width:250px;flex:1;font-size:12px;margin-left:auto}.restaurant-area{margin-bottom:60px}.restaurant-area>h2{font-size:38px;margin:40px 0 30px}.restaurant{border-top:1px solid var(--line)}.restaurant:last-child{border-bottom:1px solid var(--line)}.restaurant summary{list-style:none;cursor:pointer;padding:25px 0;display:flex;align-items:center;justify-content:space-between;gap:25px}.restaurant summary::-webkit-details-marker{display:none}.restaurant summary:after{content:'+';font-size:23px;color:var(--gold)}.restaurant[open] summary:after{content:'−'}.restaurant h3{font-size:30px}.restaurant-meta{font-size:10px;color:var(--muted);margin-top:9px;display:block}.restaurant-body{padding:0 40px 30px 0;max-width:900px;font-size:13px;color:var(--muted)}.restaurant-links{display:flex;gap:28px;margin-top:20px;flex-wrap:wrap}.restaurant-links .text-link{font-size:9px}.archive-list{border:1px solid var(--line);padding:25px;margin-top:40px}.archive-list>summary{cursor:pointer;font:28px var(--serif)}.archive-item{border-top:1px solid var(--line);margin-top:20px;padding-top:20px;font-size:12px;color:var(--muted)}.archive-item h3{font-size:25px;margin-bottom:12px;color:var(--ink)}.archive-item a{font-size:10px;text-decoration:underline}.archive-item p{margin-bottom:10px}.empty{text-align:center;padding:60px}.press-list{margin-top:40px}.press-item{display:grid;grid-template-columns:140px 1fr 30px;gap:40px;padding:32px 0;border-top:1px solid var(--line);align-items:center}.press-item>span:first-child{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.press-item h2{font-size:31px;line-height:1.25}.press-item:hover h2{color:var(--gold)}
/* Direct contact remains an explicit email draft, never a simulated booking. */
.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px}.contact-info h2{font-size:45px;margin-bottom:30px}.contact-info h3{font:600 9px var(--sans);letter-spacing:.16em;text-transform:uppercase;margin:30px 0 12px}.contact-info p,.contact-info>a{font-size:13px}.contact-info>a{overflow-wrap:anywhere;border-bottom:1px solid var(--line)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.field{display:flex;flex-direction:column;gap:10px}.field.full{grid-column:1/-1}.field label{font-size:9px;text-transform:uppercase;letter-spacing:.1em}.field input,.field select,.field textarea{width:100%;min-width:0;border:0;border-bottom:1px solid #aaa99e;border-radius:0;background:transparent;min-height:47px;padding:10px 0;color:var(--ink)}.field textarea{resize:vertical}.form-foot{margin-top:35px}.form-foot p{font-size:11px;color:var(--muted);margin-top:22px}.enquiry-preview{background:var(--sand);white-space:pre-wrap;overflow-wrap:anywhere;padding:25px;font:12px/1.8 var(--sans);margin:25px 0}.map-card{display:grid;grid-template-columns:1fr 1fr;background:var(--sand);margin-top:80px}.map-card>img{height:440px;object-fit:cover}.map-copy{padding:50px;align-self:center}.map-copy p{font-size:13px;margin:20px 0;color:var(--muted)}.policy-list{max-width:950px}.policy-list details{border-bottom:1px solid var(--line);padding:25px 0}.policy-list summary{font:28px var(--serif);cursor:pointer}.policy-list p{font-size:13px;margin-top:20px;color:var(--muted)}.not-found{min-height:70svh;display:grid;place-items:center;padding:80px 25px;text-align:center}.not-found p{margin:25px}.booking-dialog{border:0;background:var(--paper);padding:0;max-width:1100px;width:92vw;max-height:90svh;overflow:auto;color:var(--ink)}.booking-dialog[open]{display:grid;grid-template-columns:.8fr 1.2fr}.booking-photo img{height:100%;min-height:650px;object-fit:cover}.booking-content{padding:55px}.booking-content h2{font-size:55px}.booking-content>p{font-size:12px;color:var(--muted);margin-top:22px}.dialog-close{position:absolute;right:15px;top:12px;width:42px;height:42px;font-size:25px;background:var(--paper);border:1px solid var(--line);z-index:1}.stay-planner{margin-top:30px}.stay-planner .button{margin-top:30px;width:100%}.stay-planner small{display:block;font-size:9px;color:var(--muted);line-height:1.7;margin-top:15px}.booking-partners{display:flex;gap:25px;flex-wrap:wrap;margin-top:20px}.booking-partners .text-link{font-size:8px}.booking-content .eyebrow{font-size:9px}.booking-content .field input,.booking-content .field select{font-size:12px}
@media(min-width:1600px){.hero{min-height:700px}.hero-content{padding-bottom:130px}.wrap{max-width:1500px}.collection-photo img{height:530px}}
@media(max-width:1100px){.wrap{padding-left:44px;padding-right:44px}.section{padding-top:85px;padding-bottom:85px}.nav{gap:30px}.masthead{margin:0 30px}.collection-slide{gap:45px}.collection-photo img{height:430px}.collection-copy h3{font-size:48px}.collection-copy p{font-size:12px}.editorial{gap:65px}.editorial-photo img{height:520px}.journal-grid{gap:24px}.story-image img{height:270px}.ratings-inner{gap:35px}.ratings h2{font-size:34px}.rating-number{font-size:56px}.cta-inner{padding:50px}.footer-grid{gap:30px}.catalog-item{gap:45px}.catalog-photo img{height:400px}.villa-overview{gap:60px}.villa-summary{gap:20px}.villa-summary strong{font-size:10px}.villa-summary .button{padding:15px 22px;gap:15px}.facility-grid{gap:65px}.guide-section{gap:60px}.contact-grid{gap:60px}.guide-intro{gap:50px}.immersive-copy{padding-left:60px}.experience-copy{padding:50px}.guide-overview-cards .story-image img{height:310px}.header-location{font-size:8px}.stay-card{padding:28px}.booking-content{padding:45px}.booking-photo img{min-height:700px}}
@media(max-width:800px){html{scroll-padding-top:100px}.masthead{height:85px;margin:0 24px}.brand-name{font-size:29px}.brand-caption{font-size:7px}.header-location{display:none}.header-action{font-size:8px;padding:12px 15px;gap:15px}.menu-toggle{display:flex;align-items:center;gap:12px;position:absolute;left:0;border:0;background:none;padding:10px 0;min-height:44px;font-size:8px;letter-spacing:.12em;text-transform:uppercase}.menu-lines{display:block;position:relative;width:22px;height:9px;border-top:1px solid currentColor;border-bottom:1px solid currentColor}.menu-toggle[aria-expanded=true] .menu-lines{border-bottom:0;transform:rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-lines:after{content:'';position:absolute;width:22px;top:-1px;left:0;transform:rotate(90deg);border-top:1px solid}.nav{display:none;border-top:1px solid var(--line);height:auto;max-height:calc(100svh - 85px);overflow:auto;padding:25px 35px 35px;gap:0}.nav.open{display:flex;flex-direction:column;align-items:stretch}.nav>a{font:32px/1.1 var(--serif);letter-spacing:0;text-transform:none;min-height:58px;border-bottom:1px solid var(--line);padding:12px 0}.nav>a:after{display:none}.nav>a[aria-current=page]{color:var(--gold)}.nav .mobile-contact{display:flex;font:10px var(--sans);letter-spacing:.08em;text-transform:uppercase;margin-top:15px;border:0}.wrap{padding-left:30px;padding-right:30px}.hero{height:calc(100svh - 85px);min-height:640px}.hero h1{font-size:78px}.hero-bottom{left:28px;right:28px}.hero-photo-caption{font-size:8px}.scroll-link{font-size:7px;gap:12px}.property-line{gap:20px;font-size:8px}.welcome h2{font-size:45px}.collection-slide{grid-template-columns:1fr 1fr;gap:30px}.collection-photo img{height:400px}.collection-copy h3{font-size:42px}.collection-copy p{font-size:11px;margin:18px 0}.collection-copy .collection-tag{font-size:23px}.collection-tabs{justify-content:space-between;gap:10px}.collection-tabs button{font-size:9px}.collection-copy .eyebrow{font-size:8px}.editorial{gap:40px}.editorial-photo img{height:480px}.editorial-copy h2{font-size:44px}.editorial-copy p{font-size:12px}.immersive{height:550px}.immersive-copy{padding:50px}.journal-grid{gap:20px}.story-image img{height:220px}.story-caption h3{font-size:28px}.story-caption p{font-size:11px}.story-caption .eyebrow{font-size:8px}.ratings-inner{grid-template-columns:1fr 1fr;gap:35px}.rating-links{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;justify-content:center;gap:25px;align-items:start}.rating-method{max-width:260px}.cta-inner{padding:40px}.cta h2{font-size:45px}.cta-image img{min-height:460px}.cta{min-height:460px}.footer-top{gap:35px}.footer-top p{font-size:24px}.footer-contact{font-size:8px;gap:15px}.footer-grid{grid-template-columns:1.3fr 1fr;gap:40px}.footer-bottom{font-size:8px}.page-head{padding-top:40px;padding-bottom:50px}.page-head h1{font-size:61px}.page-photo{height:440px}.intro-grid{gap:50px}.intro-grid>div>img,.intro-grid>img{height:430px}.intro-copy h2{font-size:45px}.catalog-item{gap:30px}.catalog-copy h2{font-size:43px}.catalog-copy p{font-size:12px}.catalog-photo img{height:420px}.catalog-actions{gap:20px}.catalog-actions .text-link{font-size:9px}.villa-hero{height:460px;margin:0 20px}.villa-summary{flex-wrap:wrap;justify-content:start;gap:25px 35px}.villa-summary .button{margin-left:auto}.villa-summary strong{font-size:11px}.villa-overview{gap:35px;grid-template-columns:1.3fr 1fr}.stay-card{padding:25px;top:110px}.stay-card h3{font-size:33px}.villa-overview h2{font-size:45px}.villa-overview .lead{font-size:13px}.amenities{gap:0 20px}.amenities li{font-size:11px}.photo-grid .gallery-item:first-child img{height:430px}.photo-grid img{height:280px}.gallery-masonry{columns:2}.facility-grid{gap:45px}.facility-grid h2{font-size:42px}.experience-copy{padding:40px}.experience-copy h2{font-size:42px}.guide-nav{top:85px}.guide-nav .wrap{gap:25px}.guide-section{gap:35px;grid-template-columns:.8fr 1.2fr}.guide-section h2{font-size:39px}.guide-intro{gap:35px}.guide-intro img{height:420px}.guide-intro h2{font-size:38px}.guide-intro p{font-size:12px}.guide-overview-cards .story-image img{height:290px}.guide-essentials{gap:24px}.guide-essentials h3{font-size:26px}.contact-grid{gap:40px;grid-template-columns:.9fr 1.1fr}.contact-info h2{font-size:39px}.map-copy{padding:35px}.press-item{gap:25px;grid-template-columns:110px 1fr 20px}.booking-dialog{width:94vw}.booking-dialog[open]{grid-template-columns:.6fr 1fr}.booking-content{padding:40px 30px}.booking-content h2{font-size:45px}}
@media(max-width:600px){body{font-size:13px}.wrap{padding-left:23px;padding-right:23px}.section{padding-top:65px;padding-bottom:65px}h2{font-size:42px}h3{font-size:31px}.eyebrow{font-size:8px;margin-bottom:18px}.masthead{margin:0 18px;height:80px}.brand-name{font-size:25px;letter-spacing:.12em}.brand-caption{font-size:6px;letter-spacing:.2em;margin-top:7px}.menu-word{display:none}.menu-toggle{padding:10px 3px}.menu-lines{width:21px}.header-action{font-size:8px;padding:11px 10px;min-height:40px;letter-spacing:.05em;border-color:var(--line);width:67px;justify-content:center;line-height:1.5}.header-action .arrow{display:none}.header-action{font-size:0}.header-action:before{content:'Your stay';font-size:8px}.nav{padding:18px 25px 25px;max-height:calc(100svh - 80px)}.hero{height:calc(92svh - 80px);min-height:570px;max-height:800px}.hero-slide img{object-position:59% center}.hero-content{padding:50px 22px 115px}.hero-content .eyebrow{font-size:8px;letter-spacing:.16em}.hero h1{font-size:62px}.hero-content p{font-size:10px;letter-spacing:.03em;max-width:270px;margin-top:25px}.hero-link{font-size:8px;margin-top:25px}.hero-bottom{grid-template-columns:1fr;gap:8px;left:23px;right:23px;bottom:20px;text-align:center}.hero-controls{grid-row:1;justify-self:center;gap:9px}.hero-photo-caption{justify-self:center;max-width:none;font-size:8px}.scroll-link{display:none}.property-line{gap:13px;padding:20px 14px;flex-wrap:wrap;font-size:7px;letter-spacing:.08em}.property-line i{width:2px;height:2px}.welcome h2{font-size:39px;line-height:1.15}.welcome h2 br{display:none}.welcome h2 em{display:block;margin-top:8px}.welcome p{font-size:12px;line-height:1.9;margin-top:25px}.welcome .ornament{margin-top:35px}.section-head{display:block;margin-bottom:30px}.section-head>p{margin-top:22px;font-size:12px}.section-head>.text-link{margin-top:22px}.section-head h2{font-size:42px}.collection-tabs{overflow:auto;justify-content:space-between;gap:15px;margin:25px 0}.collection-tabs button{font-size:8px;flex-shrink:0;padding:12px 0}.collection-slide{grid-template-columns:1fr;gap:28px}.collection-photo img{height:340px}.collection-copy h3{font-size:47px}.collection-copy .eyebrow{font-size:8px;margin-bottom:12px}.collection-copy p{font-size:12px}.collection-copy .collection-tag{font-size:25px;margin:10px 0 18px}.mini-facts{font-size:10px;margin-top:22px}.editorial{grid-template-columns:1fr;gap:35px}.editorial-photo img{height:450px}.editorial-copy{max-width:none}.editorial-copy h2{font-size:46px}.editorial-copy p{font-size:12px}.image-caption{font-size:18px}.immersive{height:520px}.immersive-copy{padding:35px 26px}.immersive h2{font-size:57px}.immersive img{object-position:57% center}.journal-grid{grid-template-columns:1fr;gap:40px}.story-image img{height:310px}.story-caption{padding-top:22px}.story-caption h3{font-size:34px}.story-caption p{font-size:12px}.story-caption .eyebrow{font-size:9px}.ratings{padding:50px 0}.ratings-inner{grid-template-columns:1fr;gap:35px;text-align:center}.ratings h2{font-size:39px}.rating-number{font-size:67px}.rating-links{grid-column:auto;flex-direction:column;align-items:center;gap:18px}.rating-method{max-width:300px;text-align:center}.rating-links .text-link{font-size:9px}.cta{grid-template-columns:1fr}.cta-image img{height:310px;min-height:0}.cta-inner{padding:55px 25px}.cta h2{font-size:51px}.cta-inner p{font-size:12px}.footer{padding-top:45px}.footer-top{flex-direction:column;text-align:center;gap:28px;padding-bottom:35px}.footer-top .brand-name{font-size:36px}.footer-top .brand-caption{font-size:7px}.footer-top p{font-size:27px}.footer-contact{font-size:9px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px 24px;padding:40px 0}.footer-grid>div:first-child{grid-column:1/-1;text-align:center;padding-bottom:10px}.footer-grid>div:last-child{grid-column:1/-1}.footer-grid>div:last-child a{display:inline-block;margin-right:20px}.footer-grid a{font-size:11px;line-height:2.4}.footer-grid h4{font-size:9px;margin-bottom:15px}.footer-bottom{font-size:8px;flex-wrap:wrap;justify-content:center;gap:10px 20px;text-align:center}.page-head{padding-top:30px;padding-bottom:40px}.breadcrumb{font-size:8px;margin-bottom:28px;flex-wrap:wrap}.page-head h1{font-size:51px}.page-head .lead{font-size:12px;line-height:1.9}.page-head .eyebrow{font-size:8px}.page-photo{height:330px}.intro-grid{grid-template-columns:1fr;gap:35px}.intro-grid>div>img,.intro-grid>img{height:380px}.intro-copy h2{font-size:43px}.intro-copy p{font-size:12px}.quote-section{padding:65px 23px}.quote-section h2{font-size:43px}.collection-banner{height:300px}.collection-banner>span{font-size:28px;padding:25px}.toolbar{gap:18px;margin-bottom:35px}.chip{font-size:9px;padding:12px 0}.results-count{font-size:9px;margin-left:0}.catalog{gap:45px}.catalog-item{grid-template-columns:1fr;gap:28px;padding-bottom:45px}.catalog-item:nth-child(even) .catalog-photo{order:0}.catalog-photo img{height:340px}.catalog-copy h2{font-size:46px}.catalog-copy p{font-size:12px;margin:20px 0}.catalog-facts{grid-template-columns:1fr 1fr;gap:18px;margin:23px 0}.catalog-facts dd{font-size:11px}.catalog-facts dt{font-size:8px}.catalog-actions{gap:35px}.catalog-actions .text-link{font-size:9px}.compare summary{font-size:29px}.note{font-size:11px;padding:20px;margin-top:25px}.villa-title{padding-top:25px;padding-bottom:32px}.villa-title h1{font-size:60px}.villa-title .breadcrumb{margin-bottom:20px}.villa-hero{height:370px;margin:0}.image-gallery-link{right:18px;bottom:18px;padding:13px 16px;font-size:8px;gap:20px}.villa-summary{display:grid;grid-template-columns:1fr 1fr;gap:22px;padding-top:28px;padding-bottom:28px}.villa-summary>div:nth-child(3){grid-column:1/-1}.villa-summary>div:nth-child(4){grid-column:1}.villa-summary .button{grid-column:2;grid-row:4;padding:13px 20px;min-width:130px;font-size:9px}.villa-summary strong{font-size:11px}.villa-overview{grid-template-columns:1fr;gap:40px}.villa-overview h2{font-size:43px}.villa-overview .lead{font-size:13px}.amenities-title{font-size:29px;margin-top:35px}.amenities{gap:0 22px;margin-top:15px}.amenities li{font-size:10px;line-height:1.8}.stay-card{position:static;padding:32px}.stay-card h3{font-size:38px}.stay-card .button{font-size:10px}.stay-card .text-link{font-size:9px}.practical-note{font-size:11px}.photo-grid{gap:12px}.photo-grid .gallery-item:first-child img{height:330px}.photo-grid img{height:210px}.zoom{right:10px;bottom:10px;width:30px;height:30px;font-size:18px}.gallery-masonry{column-gap:12px}.gallery-masonry .gallery-item{margin-bottom:12px}.lightbox>img{height:65svh}.lightbox-bar{flex-wrap:wrap;padding:12px}.lightbox-caption{font-size:10px;max-width:100%}.lightbox-controls{margin-left:auto}.facility-grid{grid-template-columns:1fr;gap:35px}.facility-block h3{font-size:32px}.facility-block ul{font-size:12px;line-height:2.2}.experience-band{grid-template-columns:1fr}.experience-band>img{min-height:0;height:360px}.experience-copy{padding:50px 25px}.experience-copy h2{font-size:45px}.guide-grid{grid-template-columns:1fr}.guide-card{height:380px}.guide-copy{left:25px;right:25px;bottom:25px}.guide-copy h3{font-size:39px}.guide-nav{top:80px}.guide-nav .wrap{gap:25px}.guide-nav a{font-size:8px;padding:16px 0}.guide-section{grid-template-columns:1fr;gap:28px;padding:50px 0;scroll-margin-top:52px}.guide-section h2{font-size:43px}.guide-section h2 br{display:none}.guide-body h3{font-size:29px}.guide-body p,.guide-body ul{font-size:12px}.guide-intro{grid-template-columns:1fr;gap:30px;padding-bottom:40px}.guide-intro img{height:320px}.guide-intro h2{font-size:38px}.guide-index{gap:20px}.guide-overview-cards .journal-grid{grid-template-columns:1fr}.guide-overview-cards .story-image img{height:300px}.guide-essentials{grid-template-columns:1fr;gap:0}.guide-essentials h3{font-size:29px;margin-bottom:15px}.restaurant-search{width:100%;min-width:0;flex-basis:100%;margin:0}.restaurant-area{margin-bottom:40px}.restaurant-area>h2{font-size:34px;margin-top:30px}.restaurant h3{font-size:28px}.restaurant summary{padding:22px 0;gap:15px}.restaurant-meta{font-size:9px}.restaurant-body{font-size:12px;padding-right:0}.restaurant-links{gap:20px}.archive-list{padding:20px}.archive-list>summary{font-size:26px}.archive-item h3{font-size:25px}.press-item{grid-template-columns:1fr 20px;gap:10px;padding:25px 0}.press-item>span:first-child{grid-column:1/-1;font-size:9px}.press-item h2{font-size:28px}.contact-grid{grid-template-columns:1fr;gap:50px}.contact-info h2{font-size:43px}.form-grid{gap:23px 20px}.field label{font-size:8px}.field input,.field select{font-size:13px}.map-card{grid-template-columns:1fr;margin-top:55px}.map-card>img{height:310px}.map-copy{padding:35px 25px}.map-copy h3{font-size:38px}.policy-list summary{font-size:25px}.policy-list p{font-size:12px}.booking-dialog{width:94vw;max-height:94svh}.booking-dialog[open]{display:block}.booking-photo{display:none}.booking-content{padding:45px 25px 30px}.booking-content h2{font-size:47px}.booking-content .eyebrow{font-size:8px;max-width:220px}.booking-content>p{font-size:12px}.booking-partners{gap:18px}.booking-partners .text-link{font-size:8px}.booking-content .form-grid{gap:20px 15px}.booking-content .field select{font-size:11px}.dialog-close{width:36px;height:36px;font-size:22px}.other-villas{padding-bottom:55px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
.property-scores{display:flex;gap:26px;justify-content:center}.property-scores .rating-number{font-size:48px}.property-scores .rating-number span{font-size:18px;margin-left:4px}.property-scores p{font-size:9px;white-space:nowrap}.villa-review-pair{display:flex;gap:28px;margin:25px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0}.villa-review-pair a{flex:1;display:block}.villa-review-pair strong{font:32px/1.1 var(--serif)}.villa-review-pair small{font-size:15px;margin-left:4px}.villa-review-pair span{display:block;font-size:8px;line-height:1.7;margin-top:7px;color:var(--muted)}.stay-card .rating-method{margin-top:20px}.stay-card .rating-method p{font-size:10px}.catalog-copy .villa-review-pair{max-width:350px;margin:20px 0 12px;padding:15px 0}.catalog-copy .villa-review-pair strong{font-size:28px}.catalog-copy .villa-review-pair span{font-size:8px}@media(max-width:1100px){.ratings-inner{grid-template-columns:1fr 1.2fr}.rating-links{grid-column:1/-1;flex-direction:row;justify-content:center;gap:30px}.property-scores{gap:30px}}@media(max-width:600px){.ratings-inner{grid-template-columns:1fr}.property-scores{gap:35px}.property-scores .rating-number{font-size:54px}.rating-links{flex-direction:column;align-items:center;gap:18px}.villa-review-pair{gap:25px}}
.restaurant-previous{display:block;margin:0 0 15px;font-size:10px;color:var(--gold)}.itinerary-day .guide-body>img:first-child{margin-top:0}.guide-section .eyebrow{max-width:280px}.guide-essentials .source-links{display:flex;flex-wrap:wrap;margin-top:18px;gap:12px}.guide-essentials .source-links a{font-size:9px;text-decoration:underline;text-underline-offset:4px}
/* A visible editorial bridge between the welcome and villa collection. */
.press-showcase{padding:20px 0 85px;background:var(--paper)}
.press-showcase .section-head{border-top:1px solid var(--line);padding-top:45px;margin-bottom:35px}
.press-showcase h2{font-size:43px}
.press-showcase .eyebrow{color:var(--gold)}
.press-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
.press-feature-photo{position:relative;overflow:hidden}
.press-feature-photo img{height:270px;object-fit:cover;transition:transform .7s}
.press-feature:hover img{transform:scale(1.025)}
.press-publication{position:absolute;left:0;bottom:0;max-width:95%;background:var(--paper);padding:12px 18px 0 0;font:500 10px/1.6 var(--sans);letter-spacing:.08em;text-transform:uppercase}
.press-feature-copy{padding-top:22px}
.press-feature h3{font-size:31px;line-height:1.12;max-width:340px}
.press-feature p{font-size:12px;color:var(--muted);margin:16px 0}
.press-feature .text-link{font-size:9px}
.press-archive-note{font-size:9px;color:var(--muted);margin-top:30px}
@media(max-width:1100px){.press-feature-photo img{height:230px}.press-feature-grid{gap:24px}.press-feature h3{font-size:28px}}
@media(max-width:800px){.press-showcase h2{font-size:39px}.press-showcase .section-head{align-items:start;gap:25px}.press-showcase .section-head>.text-link{font-size:8px;flex-shrink:0}.press-feature-grid{gap:20px}.press-feature-photo img{height:200px}.press-feature h3{font-size:26px}.press-publication{font-size:8px;letter-spacing:.04em}.press-feature p{font-size:11px}}
@media(max-width:600px){.press-showcase{padding:0 0 60px}.press-showcase .section-head{padding-top:35px;margin-bottom:30px}.press-showcase h2{font-size:39px}.press-showcase .section-head>.text-link{font-size:9px}.press-feature-grid{grid-template-columns:1fr;gap:36px}.press-feature-photo img{height:270px}.press-publication{font-size:9px;padding-top:12px}.press-feature h3{font-size:33px}.press-feature p{font-size:12px}.press-feature-copy{padding-top:20px}.press-archive-note{font-size:8px}}

/* Booking options lead straight to each villa on the booking platforms. */
.booking-content{padding:45px 42px 34px}.booking-content h2{font-size:51px}.booking-instruction{font-size:12px;color:var(--muted);margin:20px 0}.booking-villas{display:grid;grid-template-columns:1fr;gap:0}.booking-villa{border-top:1px solid var(--line);padding:16px 0;display:flex;align-items:center;justify-content:space-between;gap:20px}.booking-villa-name h3{font-size:27px}.booking-villa-name>span{font-size:9px;color:var(--muted)}.booking-villa-links{display:flex;gap:23px;align-items:center}.booking-villa-links .text-link{font-size:9px;gap:10px;white-space:nowrap;padding:9px 0 5px}.booking-channel-note{font-size:10px;line-height:1.8;color:var(--muted);margin-top:20px}.booking-help{display:block;font-size:10px;color:var(--muted);margin-top:22px}.booking-help[href]{text-decoration:underline;text-underline-offset:4px}.booking-page{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:start}.booking-page-photo img{height:680px;object-fit:cover}.booking-page .booking-instruction{margin-top:0}.booking-page .booking-villa{padding:23px 0}.booking-page .booking-villa-name h3{font-size:32px}.booking-page .booking-help .text-link{font-size:9px;margin-left:10px}.stay-card .button.outline{margin-top:12px}.stay-card .booking-help{display:block;font-size:10px;margin-top:24px}.contact-booking h2{font-size:44px}.booking-dialog .booking-photo img{min-height:100%;object-fit:cover}.booking-dialog{max-height:92svh}.booking-dialog .booking-content{overflow-y:auto}.header-action:before{content:none!important}
@media(max-width:1100px){.booking-page{gap:40px}.booking-villa-links{gap:16px}.booking-content{padding:35px 30px}.booking-villa-name h3{font-size:24px}.booking-content h2{font-size:45px}}
@media(max-width:800px){.booking-page{grid-template-columns:1fr;gap:35px}.booking-page-photo img{height:380px}.booking-content{padding:35px 28px}.booking-dialog[open]{grid-template-columns:1fr}.booking-dialog .booking-photo{display:none}}
@media(max-width:600px){.booking-dialog{max-height:94svh}.booking-content{padding:42px 22px 28px}.booking-content h2{font-size:45px}.booking-villa{gap:12px;flex-wrap:wrap;padding:14px 0}.booking-villa-name h3{font-size:25px}.booking-villa-name>span{font-size:8px}.booking-villa-links{gap:20px}.booking-villa-links .text-link{font-size:8px;gap:10px}.booking-instruction{font-size:11px;margin:18px 0}.booking-channel-note{font-size:9px}.booking-page .booking-villa-name h3{font-size:29px}.booking-page-photo img{height:330px}.booking-page .booking-villa{padding:20px 0}.header-action{font-size:8px!important;color:var(--ink)!important;width:78px;padding:9px 12px;line-height:1.5;text-align:center;justify-content:center}.booking-help{font-size:10px}}

.collection-actions{display:flex;gap:28px;flex-wrap:wrap}.collection-actions .text-link{font-size:9px}.capacity-filter{margin-left:auto;display:flex;align-items:center;gap:12px;font-size:9px;text-transform:uppercase;letter-spacing:.1em}.capacity-filter select{min-height:44px;padding:8px 30px 8px 13px;border:1px solid var(--line);background:var(--paper);font:11px var(--sans);color:var(--ink)}.villa-empty{padding:40px;border:1px solid var(--line);text-align:center}.villa-empty p{margin:16px auto;max-width:530px;color:var(--muted)}.mobile-booking-bar{display:none}.booking-villa-links .text-link{min-height:44px}.booking-villa-links .text-link:focus-visible{outline-offset:3px}
@media(max-width:800px){.toolbar{flex-wrap:wrap}.capacity-filter{margin-left:0}.results-count{margin-left:auto}}
@media(max-width:600px){.capacity-filter{flex-basis:100%;justify-content:space-between}.capacity-filter select{flex:1;max-width:220px}.mobile-booking-bar{position:fixed;z-index:29;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 20px calc(12px + env(safe-area-inset-bottom));background:var(--paper);border-top:1px solid var(--line);box-shadow:0 -3px 14px #00000008}.mobile-booking-bar>span{font:21px/1.05 var(--serif);max-width:85px}.mobile-booking-bar>div{display:flex;gap:8px}.mobile-booking-bar .button{padding:11px 12px;min-height:44px;gap:10px;font-size:8px;letter-spacing:.06em}.page-villas-raya,.page-villas-minang,.page-villas-wooden,.page-villas-hilltop,.page-villas-markisa,.page-villas-garden{padding-bottom:calc(70px + env(safe-area-inset-bottom))}.collection-actions{gap:18px}.collection-actions .text-link{font-size:8px}.villa-empty{padding:30px 20px}}

/* Every villa is visible at once, with comparable facts and clear actions. */
.collection-intro{font-size:13px;color:var(--muted);margin-top:20px;max-width:510px}.home-villa-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 30px}.home-villa-photo{display:block;overflow:hidden}.home-villa-photo img{height:290px;object-fit:cover;transition:transform .6s}.home-villa-photo:hover img{transform:scale(1.025)}.home-villa-copy{padding-top:22px}.home-villa h3{font-size:37px}.home-villa-facts{display:flex;align-items:center;flex-wrap:wrap;gap:9px;font-size:10px;margin-top:16px;color:var(--ink)}.home-villa-view{font-size:11px;color:var(--muted);margin-top:5px}.home-villa-actions{display:flex;gap:32px;margin-top:15px}.home-villa-actions .text-link{font-size:9px;min-height:44px;gap:18px}
@media(max-width:1100px){.home-villa-photo img{height:240px}.home-villa-grid{gap:40px 25px}.home-villa h3{font-size:33px}}
@media(max-width:800px){.home-villa-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-villa-photo img{height:260px}.home-villa h3{font-size:34px}}
@media(max-width:600px){.home-villa-grid{grid-template-columns:1fr;gap:38px}.home-villa-photo img{height:290px}.home-villa-copy{padding-top:20px}.home-villa h3{font-size:38px}.home-villa-facts{font-size:11px;margin-top:12px}.home-villa-view{font-size:12px}.home-villa-actions{gap:36px;margin-top:13px}.home-villa-actions .text-link{font-size:9px}.collection-intro{font-size:12px;margin-top:18px}.collection-section .section-head{gap:22px}}

/* Shared inset grid keeps adjoining image sections aligned and separated. */
.split-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:64px;align-items:center}
.experience-band{display:block;background:var(--paper)}
.experience-band .split-layout>img,.cta-image img{width:100%;height:auto;aspect-ratio:6/5;min-height:0;object-fit:cover}
.experience-copy{padding:30px 34px;min-width:0}
.experience-copy h2{font-size:clamp(42px,4vw,58px)}
.experience-copy .text-link{margin-top:20px}
.cta{display:block;min-height:0;background:var(--sand);padding:80px 0}
.cta-inner{padding:30px 34px;min-width:0;text-align:center}
.cta h2{font-size:clamp(43px,4.3vw,60px)}
.experience-band+.cta{margin-top:96px}
@media(max-width:1100px){.split-layout{gap:40px}.experience-copy,.cta-inner{padding:22px 15px}.experience-band+.cta{margin-top:72px}.cta{padding:64px 0}}
@media(max-width:800px){.split-layout{grid-template-columns:1fr;gap:36px}.experience-band .split-layout>img,.cta-image img{aspect-ratio:4/3;max-height:480px}.experience-copy,.cta-inner{padding:0 12px}.experience-copy h2,.cta h2{font-size:48px}.experience-band+.cta{margin-top:64px}}
@media(max-width:600px){.split-layout{gap:30px}.experience-band .split-layout>img,.cta-image img{height:auto;aspect-ratio:4/3;min-height:0}.experience-copy,.cta-inner{padding:0}.experience-copy h2,.cta h2{font-size:43px}.experience-band+.cta{margin-top:56px}.cta{padding:46px 0 50px}.cta-inner p{margin:20px 0 24px}}

/* The complete collection stays visible; sorting only changes its order. */
.villa-toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);padding-bottom:24px;margin-bottom:45px;scroll-margin-top:20px}.villa-toolbar>p{font:29px/1.2 var(--serif)}.villa-sort-control{display:flex;align-items:center;gap:16px}.villa-sort-control label{font-size:9px;letter-spacing:.1em;text-transform:uppercase}.villa-sort-control select{min-height:46px;min-width:245px;border:1px solid var(--line);padding:10px 36px 10px 15px;background:var(--paper);color:var(--ink);font:12px/1.5 var(--sans)}
@media(max-width:600px){.villa-toolbar{align-items:start;flex-direction:column;gap:18px;margin-bottom:30px;padding-bottom:22px}.villa-toolbar>p{font-size:28px}.villa-sort-control{width:100%;gap:14px}.villa-sort-control select{min-width:0;flex:1;width:100%;font-size:11px;padding-left:12px}.villa-sort-control label{flex-shrink:0;font-size:8px}}

/* Editorial highlights open locally, with an optional link to the publisher. */
.press-open-icon{font:20px/1 var(--sans);font-weight:300}.press-dialog{width:min(1080px,92vw);max-height:90svh;padding:0;border:0;background:var(--paper);color:var(--ink);box-shadow:0 30px 100px #0005;overflow:auto}.press-dialog::backdrop{background:#172019b8;backdrop-filter:blur(6px)}.press-dialog[open]{display:grid;grid-template-columns:.95fr 1fr}.press-dialog-photo{margin:0;position:relative;min-height:560px}.press-dialog-photo img{position:absolute;inset:0;height:100%;width:100%;object-fit:cover}.press-dialog-photo figcaption{position:absolute;bottom:20px;left:22px;right:22px;font-size:9px;color:white;text-shadow:0 1px 8px #000;background:#14201680;width:fit-content;padding:7px 10px}.press-dialog-content{padding:56px 46px 38px;min-width:0}.press-dialog-content>.eyebrow{font-size:9px;color:var(--gold);padding-right:20px}.press-dialog h2{font-size:42px}.press-dialog-intro{font-size:12px;color:var(--muted);margin-top:20px}.press-dialog blockquote{font:italic 33px/1.22 var(--serif);margin:30px 0 22px;letter-spacing:-.01em}.press-quote-credit{font-size:10px;line-height:1.8}.press-quote-credit cite{display:block;font-style:normal}.press-quote-credit>span{display:block;color:var(--muted);font-size:9px;margin-top:4px}.press-dialog-actions{display:flex;flex-direction:column;align-items:start;gap:14px;border-top:1px solid var(--line);margin-top:28px;padding-top:25px}.press-dialog-actions .button{font-size:9px}.press-dialog-actions .text-link{font-size:9px}.press-dialog-note{font-size:9px;line-height:1.8;color:var(--muted);margin-top:20px}.press-dialog .dialog-close{z-index:2;background:var(--paper)}
@media(max-width:800px){.press-dialog{width:92vw;max-height:92svh}.press-dialog[open]{grid-template-columns:1fr}.press-dialog-photo{min-height:0;height:270px}.press-dialog-content{padding:35px 34px}.press-dialog h2{font-size:39px}.press-dialog blockquote{font-size:32px}}
@media(max-width:600px){.press-dialog{width:94vw;max-height:94svh}.press-dialog-photo{height:220px}.press-dialog-content{padding:29px 24px 30px}.press-dialog-content>.eyebrow{font-size:8px;padding:0}.press-dialog h2{font-size:35px}.press-dialog-intro{font-size:11px;margin-top:16px}.press-dialog blockquote{font-size:29px;margin:25px 0 18px}.press-dialog-actions{margin-top:22px;padding-top:22px}.press-dialog-photo figcaption{left:16px;bottom:14px;font-size:8px}.press-dialog .dialog-close{position:sticky;top:12px;right:12px;float:right;margin:12px 12px -48px auto;grid-column:1;grid-row:1}.press-dialog-photo{grid-column:1;grid-row:1}.press-dialog-content{grid-column:1;grid-row:2}}

.press-dialog{overflow:hidden}.press-dialog[open]{display:block}.press-dialog-layout{display:grid;grid-template-columns:.95fr 1fr;max-height:90svh;overflow-y:auto}.press-dialog .dialog-close{position:absolute;top:12px;right:12px;margin:0;float:none}.press-dialog-layout:focus-visible{outline-offset:-3px}
@media(max-width:800px){.press-dialog-layout{grid-template-columns:1fr;max-height:92svh}}
@media(max-width:600px){.press-dialog-layout{max-height:94svh}}

/* A small amount of depth, confined to two full-width photographs. */
.hero,.immersive{overflow:hidden}
@media(min-width:900px) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .scroll-photo{transform:translate3d(0,var(--photo-drift,0px),0) scale(1.06)}
}
@media(prefers-reduced-motion:reduce){.scroll-photo{transform:none!important}}
