@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500&family=Manrope:wght@400;500;600&display=swap";:root{color-scheme:light;--oe-color-sand: #f7f3ee;--oe-color-warm-white: #fcfaf7;--oe-color-white: #ffffff;--oe-color-driftwood: #b7a58a;--oe-color-charcoal: #2e2d2b;--oe-color-caribbean-blue: #5c8fa3;--oe-color-ink: var(--oe-color-charcoal);--oe-color-muted: #706d68;--oe-color-border: color-mix(in srgb, var(--oe-color-charcoal) 16%, transparent);--oe-color-accent: var(--oe-color-caribbean-blue);--oe-color-accent-secondary: var(--oe-color-driftwood);--oe-color-accent-soft: color-mix(in srgb, var(--oe-color-caribbean-blue) 16%, transparent);--oe-color-accent-highlight: color-mix(in srgb, var(--oe-color-caribbean-blue) 68%, var(--oe-color-white));--oe-color-accent-hover: color-mix(in srgb, var(--oe-color-caribbean-blue) 82%, var(--oe-color-charcoal));--oe-color-on-dark: var(--oe-color-warm-white);--oe-color-on-dark-muted: color-mix(in srgb, var(--oe-color-warm-white) 72%, transparent);--oe-color-focus: var(--oe-color-caribbean-blue);--oe-color-surface: var(--oe-color-warm-white);--oe-color-page: var(--oe-color-sand);--oe-color-sea: var(--oe-color-caribbean-blue);--oe-font-display: "Cormorant Garamond", Georgia, serif;--oe-font-body: "Manrope", "Helvetica Neue", Arial, sans-serif;--oe-tracking-eyebrow: .18em;--oe-tracking-navigation: .13em;--oe-radius: 0;--oe-transition: .32s cubic-bezier(.22, .8, .25, 1);--oe-content-width: 1440px;--oe-page-gutter: clamp(20px, 4vw, 72px)}:root{font-synthesis:none;text-rendering:optimizeLegibility}html{scroll-behavior:smooth}body{margin:0;background:var(--oe-color-page);color:var(--oe-color-ink)}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:100%;object-fit:cover}#story,#experience,#villas,#contact{scroll-margin-top:0}.hero{height:100svh;position:relative;display:flex;color:var(--oe-color-warm-white);overflow:hidden}.hero-media{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%;border:0;object-fit:cover;object-position:center}.hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#1419169e,#14191629 67%,#14191647),linear-gradient(0deg,rgba(9,15,13,.28),transparent 46%)}.nav-shell{z-index:2;width:100%;min-height:96px;padding:24px 4vw!important;display:flex!important;align-items:center;justify-content:space-between}.nav-shell.is-overlay{position:absolute;top:0;left:0;border-bottom:1px solid rgba(255,255,255,.25);background:#121d1a14;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.nav-shell.is-solid{position:relative;color:var(--oe-color-ink);border-bottom:1px solid rgba(24,32,25,.18);background:#f7f3eeeb;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.wordmark{font-family:Cormorant Garamond,serif!important;font-size:18px!important;letter-spacing:.17em!important;line-height:1!important}.wordmark span{display:block;font-family:Manrope,sans-serif;font-size:7px;letter-spacing:.35em;margin-top:7px;text-align:center}.desktop-nav a{position:relative;padding:10px 0;font-size:11px;text-transform:uppercase;letter-spacing:.13em}.desktop-nav a:after{content:"";position:absolute;left:0;right:0;bottom:3px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .42s cubic-bezier(.22,.8,.25,1)}.desktop-nav a:hover:after,.desktop-nav a:focus-visible:after{transform:scaleX(1)}.desktop-nav a:focus-visible{outline:none}.nav-book{position:relative;overflow:hidden;border:0!important;padding:10px 18px!important}.nav-book:after{content:"";position:absolute;left:18px;right:18px;bottom:7px;height:1px;background:currentColor;transform-origin:left;transition:opacity .25s ease}.nav-book:before{content:"";position:absolute;pointer-events:none;top:0;right:0;bottom:0;left:0;padding:1px;opacity:0;background:conic-gradient(from var(--border-angle),transparent 0 69%,currentColor 82%,currentColor 100%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;transition:opacity .2s ease}.nav-book:hover:before,.nav-book:focus-visible:before{opacity:1;animation:borderLoading 1.4s linear infinite}.nav-book:hover:after,.nav-book:focus-visible:after{opacity:.3}.nav-book.book-attention-zoom{animation:bookAttentionZoom .85s cubic-bezier(.2,.75,.25,1)}.nav-book.book-attention-shake{animation:bookAttentionShake .72s ease-in-out}.nav-book.book-attention-border:before{opacity:1;color:#f0bd70;background:conic-gradient(from var(--border-angle),transparent 0 60%,#f0bd70 78%,#fff2ce 92%,#f0bd70 100%);animation:borderLoading 1.25s linear,bookBorderAppear 1.25s ease both}.mobile-menu{display:none!important}.mobile-navigation{position:absolute;z-index:5;top:100%;left:0;right:0;display:grid;gap:0;padding:12px 4vw 20px;background:#f4efe7;color:#2e2d2b;box-shadow:0 12px 22px #00000024}.mobile-navigation a{padding:13px 4px;border-bottom:1px solid rgba(46,45,43,.14);font-size:12px;letter-spacing:.12em;text-transform:uppercase}.hero-copy{position:relative;z-index:1;align-self:end;padding:160px 4vw 10vh!important}.hero-copy h1{font-size:clamp(2.72rem,5.92vw,6.16rem);max-width:1100px;margin:18px 0 38px}.hero-note{font-family:Cormorant Garamond,serif!important;font-size:20px!important;font-style:italic}.hero-scroll{position:absolute;z-index:2;bottom:5vh;right:4vw;display:flex;gap:10px;align-items:center;font-size:9px;letter-spacing:.2em;cursor:pointer}.hero-scroll:focus-visible{outline:1px solid currentColor;outline-offset:8px}.intro-section{position:relative;height:100svh;box-sizing:border-box;padding:clamp(34px,4.5vh,54px) 0 clamp(32px,4vh,48px);display:flex;flex-direction:column;overflow:hidden;background:#f4efe7}.story-heading{position:relative;z-index:0;text-align:center;display:block!important;max-width:760px!important;padding-inline:24px!important}.story-heading .MuiTypography-overline{position:relative;z-index:2;color:var(--oe-color-accent)}.story-heading h2{width:100%;margin:18px 0 0;background:transparent;color:var(--oe-color-charcoal);font-family:Manrope,sans-serif!important;font-size:min(10pt,13.33px)!important;font-weight:500;line-height:1.4;letter-spacing:.18em;text-align:center}.story-gallery{position:relative;z-index:1;width:100%;margin-top:clamp(24px,3.5vh,42px)}.story-carousel{width:100%;overflow-x:auto;overflow-y:hidden;padding:8px 4vw 20px;scrollbar-width:none;cursor:grab;touch-action:pan-x pan-y;overscroll-behavior-inline:contain}.story-carousel::-webkit-scrollbar{display:none}.story-carousel.is-dragging{cursor:grabbing;-webkit-user-select:none;user-select:none}.story-carousel:focus-visible{outline:2px solid var(--oe-color-focus);outline-offset:-2px}.story-track{display:flex;align-items:center;gap:clamp(24px,4vw,72px);width:max-content}.story-frame{flex:0 0 auto;width:auto}.story-frame img{width:auto;max-width:min(50vw,680px);height:clamp(260px,42vh,470px);object-fit:contain}.story-frame-1,.story-frame-4,.story-frame-7,.story-frame-2,.story-frame-5,.story-frame-3,.story-frame-8{width:auto}.story-copy{width:min(calc(100% - 10vw),1120px)!important;margin-top:clamp(18px,2.5vh,30px);padding:0!important;text-align:center}.story-copy>.MuiTypography-overline{display:block;margin-bottom:8px;color:var(--oe-color-accent)}.story-text{margin-top:12px!important;font-family:Cormorant Garamond,serif!important;font-size:clamp(1.2rem,1.65vw,1.55rem)!important;line-height:1.55!important;letter-spacing:0!important}.experience-section{position:relative;height:100svh;box-sizing:border-box;overflow:hidden;background:var(--oe-color-charcoal);color:var(--oe-color-on-dark);padding:clamp(42px,5.5vh,66px) 0}.experience-section h2{font-size:clamp(2.8rem,4.4vw,4.5rem)}.experience-section>.MuiContainer-root{height:100%;max-width:1600px;padding:0 clamp(30px,4vw,64px)!important;display:flex;flex-direction:column}.experience-heading{display:grid;grid-template-columns:minmax(0,.85fr) minmax(520px,1fr);gap:clamp(36px,3vw,54px);align-items:end}.experience-heading h2{max-width:650px;margin-top:16px}.experience-intro{max-width:700px;color:var(--oe-color-on-dark-muted);font-family:Cormorant Garamond,serif!important;font-size:21px!important;line-height:1.6!important}.features{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(20px,2vw,32px);flex:1;min-height:0;margin-top:clamp(24px,3vh,40px)}.feature-card{min-height:0;display:grid;grid-template-rows:auto auto auto auto;align-self:start}.feature-card:nth-child(1){grid-column:1 / span 4}.feature-card:nth-child(2){grid-column:5 / span 4;margin-top:clamp(35px,5vh,58px)}.feature-card:nth-child(3){grid-column:9 / span 4;margin-top:clamp(15px,2.5vh,30px)}.feature-media{position:relative;height:min(42vh,480px);margin-bottom:18px;overflow:hidden;cursor:pointer;background:var(--oe-color-accent-secondary);outline:none}.feature-card:nth-child(2) .feature-media{height:min(46vh,520px)}.feature-card:nth-child(3) .feature-media{height:min(43vh,495px)}.feature-media img,.feature-media video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.feature-media video{z-index:1;opacity:0;transform:scale(1.015);transition:opacity .45s ease,transform 1.2s cubic-bezier(.2,.7,.2,1)}.feature-media:hover video,.feature-media:focus video{opacity:1;transform:scale(1)}.feature-media:focus-visible{outline:2px solid var(--oe-color-accent-highlight);outline-offset:-5px}.feature-card .MuiTypography-overline{color:var(--oe-color-accent-highlight);font-size:13.333px}.feature-card h3{margin-top:10px;font-size:clamp(23.333px,1.8vw,31.333px);line-height:1.15}.feature-body{margin-top:12px!important;max-width:36em;color:var(--oe-color-on-dark-muted);font-family:Cormorant Garamond,serif!important;font-size:clamp(13.333px,.9vw,16.333px)!important;line-height:1.55!important}.villas-section{position:relative;height:100svh;padding:0}.villas-section>.MuiContainer-root{height:100%;padding:0!important}.villa-carousel{display:grid;grid-template-rows:minmax(0,1fr) auto;height:100%;background:#efe8dd}.villa-stage{position:relative;min-height:0;overflow:hidden;outline:none;animation:villaReveal 1.25s cubic-bezier(.2,.7,.2,1) both;touch-action:pan-y}.villa-stage>img{animation:villaImageReveal 2s cubic-bezier(.2,.7,.2,1) both}.villa-stage-shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,rgba(16,22,19,.34) 0%,transparent 42%),linear-gradient(0deg,rgba(11,16,14,.52) 0%,transparent 38%)}.villa-stage:focus-visible:after{content:"";position:absolute;z-index:4;top:4px;right:4px;bottom:4px;left:4px;pointer-events:none;border:1px solid rgba(255,255,255,.82)}.villa-stage-copy{position:absolute;z-index:1;left:clamp(35px,5vw,85px);bottom:clamp(50px,7vw,95px);color:#fffdf8}.villa-stage-copy .MuiTypography-overline{letter-spacing:.22em}.villa-stage-copy h2{font-size:clamp(4rem,7vw,7.2rem);margin-top:5px;line-height:.9}.villa-arrow{position:absolute!important;z-index:2;top:50%;width:58px;height:58px;color:var(--oe-color-white)!important;background:var(--oe-color-accent)!important;transform:translateY(-50%);transition:transform .3s ease,background-color .3s ease!important}.villa-arrow:hover{background:var(--oe-color-accent-hover)!important;transform:translateY(-50%) scale(1.08)}.villa-arrow-left{left:24px}.villa-arrow-right{right:24px}.villa-dots{position:absolute;z-index:2;left:50%;bottom:25px;display:flex;align-items:center;gap:8px;transform:translate(-50%)}.villa-dots button{width:7px;height:7px;padding:0;border:0;border-radius:999px;cursor:pointer;background:#ffffff8c;transition:width .3s ease,background-color .3s ease}.villa-dots button.is-active{width:42px;background:#fffdf8}.villa-dots button:focus-visible{outline:2px solid #fff;outline-offset:4px}.villa-details{display:grid;grid-template-columns:minmax(280px,1.7fr) repeat(5,minmax(110px,.72fr)) minmax(140px,.8fr);align-items:stretch;min-height:172px;padding-bottom:28px}.villa-description{display:flex;flex-direction:column;justify-content:center;padding:24px 4vw}.villa-description .MuiTypography-overline{color:var(--oe-color-accent);margin-bottom:12px}.villa-description p:last-child{max-width:420px;font-family:Cormorant Garamond,serif;font-size:20px;line-height:1.45}.villa-fact{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:18px 12px;text-align:center;border-left:1px solid rgba(74,65,52,.14)}.villa-fact>svg{color:var(--oe-color-accent);font-size:29px}.villa-fact .MuiTypography-caption{text-transform:uppercase;letter-spacing:.14em;color:#777064;font-size:9px}.villa-fact h3{font-size:20px;line-height:1}.villa-pool-fact{gap:11px}.villa-detail-link button,.villa-detail-link a{display:inline-flex;align-items:center;gap:4px;padding:0;border:0;border-bottom:1px solid var(--oe-color-accent);background:transparent;color:#211f1a;font-family:Cormorant Garamond,serif;font-size:17px;cursor:pointer;text-decoration:none}.villa-detail-link button svg,.villa-detail-link a svg{font-size:14px}.villa-reserve{align-self:center;margin:0 22px!important;min-width:130px!important;background:var(--oe-color-accent)!important;color:var(--oe-color-white)!important}.quote-section{position:relative;width:100%;min-height:100svh;box-sizing:border-box;background:var(--oe-color-sand);overflow:hidden}.quote-header{position:relative;height:clamp(300px,43svh,470px);overflow:hidden}.quote-header>img{filter:saturate(.84) contrast(.94)}.quote-header-shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,rgba(247,243,237,.96) 0%,rgba(247,243,237,.82) 21%,rgba(247,243,237,.18) 45%,transparent 66%)}.quote-header-copy{position:absolute;z-index:1;inset:0 auto 0 clamp(32px,5vw,86px);width:min(39vw,600px);display:flex;flex-direction:column;justify-content:center;align-items:flex-start;text-align:left}.quote-header-copy h2{margin:0;font-size:clamp(4rem,7vw,7.5rem);line-height:.88}.quote-header-copy>span{width:52px;height:2px;margin:clamp(30px,4vh,48px) 0;background:var(--oe-color-accent)}.quote-header-copy p{font-family:Cormorant Garamond,serif;font-size:clamp(20px,1.7vw,28px);line-height:1.5}.quote-content{position:relative;height:clamp(480px,52svh,620px);padding-top:clamp(18px,1.5vw,28px);box-sizing:border-box;display:grid;grid-template-rows:minmax(0,1fr) 64px}.quote-pair{position:relative;grid-column:1;grid-row:1;min-height:0;display:grid;overflow:hidden;grid-template-columns:minmax(0,.95fr) minmax(0,1.15fr) minmax(0,1.05fr) minmax(0,1.15fr);animation:quoteIn 1.1s cubic-bezier(.2,.75,.2,1) both}.quote-media{min-width:0;overflow:hidden}.quote-media img{filter:saturate(.8) contrast(.95)}.quote-slide{min-width:0;padding:clamp(28px,3vw,58px);box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;text-align:left;border-right:1px solid rgba(74,65,52,.12)}.quote-mark{height:48px;color:var(--oe-color-accent);font-family:Georgia,serif!important;font-size:78px!important;line-height:1!important}.quote-slide blockquote{margin:16px 0 0;font-family:Cormorant Garamond,serif;font-size:clamp(22px,1.75vw,32px);line-height:1.18}.quote-rule{width:44px;height:2px;margin:clamp(22px,3vh,38px) 0 18px;background:var(--oe-color-accent)}.quote-slide>.MuiTypography-overline{color:#5d554b}.quote-date{margin-top:5px!important;color:#211f1a8c;font-family:Cormorant Garamond,serif!important;font-size:17px!important;font-style:italic}.quote-pair.is-exiting{z-index:2;animation:quoteOut 1.1s cubic-bezier(.4,0,.2,1) both}.quote-indicators{position:relative;z-index:3;grid-column:1;grid-row:2;display:flex;align-items:center;justify-content:center;gap:12px;min-height:64px;background:var(--oe-color-sand)}.quote-indicators button{width:8px;height:8px;padding:0;border:0;border-radius:50%;cursor:pointer;background:#211f1a5c;transition:transform .25s ease,background-color .25s ease}.quote-indicators button:hover{background:#211f1a94}.quote-indicators button:focus-visible{outline:2px solid var(--oe-color-focus);outline-offset:4px}.quote-indicators button.is-active{background:var(--oe-color-accent);transform:scale(1.35)}.quote-progress-track{position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--oe-color-accent)}footer{position:relative;min-height:100svh;box-sizing:border-box;background:#171815;color:#f3ede3;padding:clamp(72px,8vw,110px) 4vw 76px}.footer-lead{display:grid;grid-template-columns:1.5fr .7fr .5fr;gap:6vw;align-items:center;padding:0 0 90px}.footer-lead h2{font-size:clamp(3rem,5vw,5rem)}.footer-lead p{margin:8px 0}.footer-navigation{display:grid;grid-template-columns:1.6fr repeat(4,1fr);gap:clamp(30px,5vw,90px);padding:70px 0 80px;border-top:1px solid rgba(255,255,255,.2)}.footer-logo{width:min(100%,290px);height:auto;object-fit:contain;margin:0 0 25px -8px}.footer-address p:last-child{max-width:270px;color:#f3ede394;font-size:14px;line-height:1.9;margin-top:18px}.footer-link-group{display:flex;flex-direction:column;align-items:flex-start;gap:14px}.footer-link-group .MuiTypography-overline,.footer-address .MuiTypography-overline{color:#c6ab82;margin-bottom:10px}.footer-link-group a{position:relative;display:inline-block;color:#f3ede3b3;font-size:13px;line-height:1.6;transition:color .25s ease}.footer-link-group a:after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:1px;background:#c6ab82;transform:scaleX(0);transform-origin:left;transition:transform .38s cubic-bezier(.22,.8,.25,1)}.footer-link-group a:hover,.footer-link-group a:focus-visible{color:#fffdf8;outline:none}.footer-link-group a:hover:after,.footer-link-group a:focus-visible:after{transform:scaleX(1)}.footer-socials{display:flex;gap:12px;margin-top:2px}.footer-socials .MuiIconButton-root{display:inline-flex;align-items:center;justify-content:center;flex:0 0 45px;width:45px;height:45px;padding:0;line-height:1;color:#f3ede3;border:1px solid rgba(198,171,130,.7);border-radius:50%;transition:color .3s ease,border-color .3s ease,background-color .3s ease,transform .3s ease}.footer-socials .MuiIconButton-root:after{display:none}.footer-socials .MuiIconButton-root:hover,.footer-socials .MuiIconButton-root:focus-visible{color:#171815;background:#c6ab82;border-color:#c6ab82;transform:translateY(-3px)}.footer-socials svg{display:block;width:20px;height:20px;font-size:20px}.footer-social-note{margin-top:18px!important;color:#f3ede37a;font-family:Cormorant Garamond,serif!important;font-size:17px!important;line-height:1.45!important}.footer-bottom{display:grid;grid-template-columns:1fr auto 1fr;gap:25px;padding-top:28px;border-top:1px solid rgba(255,255,255,.2);color:#f3ede37a}.footer-bottom p:nth-child(2){text-align:center}.footer-bottom p:last-child{text-align:right}.booking-shell{min-height:100%}.booking-topbar{min-height:88px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid #d8d0c5;padding:0 4vw}.booking-topbar>.wordmark{width:max-content;justify-self:start}.booking-topbar>.MuiIconButton-root{justify-self:end}.booking-steps{display:flex;align-items:center;gap:clamp(24px,3vw,52px)}.booking-steps>span{color:#5f5a53;font-size:9px;letter-spacing:.15em;text-transform:uppercase;white-space:nowrap}.booking-steps b{margin-right:8px;font-weight:400}.booking-layout{min-height:calc(100vh - 89px);display:grid;grid-template-columns:1.5fr .5fr}.booking-calendar{padding:clamp(28px,3.4vw,52px) clamp(42px,5.5vw,88px) 60px}.booking-calendar-header{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(390px,1.2fr);align-items:start;gap:clamp(42px,5vw,84px)}.booking-intro{padding-top:2px}.booking-calendar h2{margin:4px 0 2px;font-size:clamp(2.75rem,3.9vw,4.6rem);line-height:.98;letter-spacing:-.025em}.booking-intro-copy{font-size:14px!important}.booking-villa-menu{display:flex;align-items:flex-start;gap:clamp(18px,3vw,42px);margin:0}.booking-villa-option{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:grid;gap:8px;width:clamp(78px,7vw,104px);padding:0;color:inherit;font:inherit;background:transparent;border:0;cursor:pointer;text-align:left}.booking-villa-image{width:100%;aspect-ratio:1.45;overflow:hidden;background:#d8d0c5}.booking-villa-image img{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.78);transition:transform .6s cubic-bezier(.2,.7,.2,1),filter .35s ease}.booking-villa-option span{position:relative;width:max-content;max-width:100%;padding-bottom:4px;font-size:10px;line-height:1.2;letter-spacing:.14em;text-transform:uppercase}.booking-villa-option span:after{content:"";position:absolute;right:0;bottom:0;left:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .35s cubic-bezier(.2,.7,.2,1)}.booking-villa-option:hover img,.booking-villa-option:focus-visible img,.booking-villa-option.is-active img{filter:saturate(1);transform:scale(1.035)}.booking-villa-option:hover span:after,.booking-villa-option:focus-visible span:after,.booking-villa-option.is-active span:after{transform:scaleX(1);transform-origin:left}.booking-villa-option:focus-visible{outline:1px solid #173c3a;outline-offset:5px}.date-fields{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;width:100%;gap:18px;margin:25px 0 0;border-bottom:1px solid #bbb1a4;padding-bottom:12px}.date-fields p:not(.MuiTypography-caption){font-size:14px}.date-fields>svg{font-size:20px}.date-fields .MuiTypography-caption,.booking-summary .MuiTypography-caption{display:block;font-size:9px;letter-spacing:.17em;margin-bottom:6px}.range-calendar{max-width:1080px;margin-top:clamp(28px,3vw,46px)}.range-calendar-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid rgba(74,65,52,.18)}.range-calendar-controls .MuiIconButton-root{width:38px;height:38px}.range-calendar-controls svg{font-size:16px}.range-legend{display:flex;gap:22px;color:#777064;font-size:9px;letter-spacing:.13em;text-transform:uppercase}.range-legend span{display:flex;align-items:center;gap:8px}.range-legend i{display:block;width:9px;height:9px;border:1px solid rgba(74,65,52,.3)}.range-legend i.is-reserved{border-color:#9f9181;background:repeating-linear-gradient(135deg,#a99c8c 0,#a99c8c 2px,#eee8de 2px,#eee8de 4px)}.range-months{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,3vw,48px)}.range-month-title{margin-bottom:15px!important;font-family:Cormorant Garamond,serif!important;font-size:20px!important;text-align:center}.range-weekdays,.range-days{display:grid;grid-template-columns:repeat(7,1fr)}.range-weekdays{margin-bottom:5px;color:#8b8377;font-size:9px;text-align:center}.range-day,.range-day-empty{aspect-ratio:1}.range-day{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;display:grid;place-items:center;min-width:0;padding:0;color:#302e29;font:inherit;font-size:11px;background:transparent;border:0;cursor:pointer}.range-day:before{content:"";position:absolute;top:9%;right:9%;bottom:9%;left:9%;z-index:0;border-radius:50%;transition:background-color .2s ease,transform .2s ease}.range-day span{position:relative;z-index:1}.range-day:not(:disabled):hover:before,.range-day:focus-visible:before{background:#173c3a1a;transform:scale(1.05)}.range-day:focus-visible{outline:none}.range-day.is-in-range{background:#173c3a1c}.range-day.is-range-start{border-radius:50% 0 0 50%;background:linear-gradient(to right,transparent 50%,rgba(23,60,58,.11) 50%)}.range-day.is-range-end{border-radius:0 50% 50% 0;background:linear-gradient(to left,transparent 50%,rgba(23,60,58,.11) 50%)}.range-day.is-range-start:before,.range-day.is-range-end:before{background:#173c3a}.range-day.is-range-start span,.range-day.is-range-end span{color:#fffdf8}.range-day.is-unavailable{color:#756b60;cursor:not-allowed;background:repeating-linear-gradient(135deg,rgba(137,123,107,.28) 0 2px,transparent 2px 6px),#bbb1a433;box-shadow:inset 0 0 0 1px #897b6b1f}.range-day.is-unavailable span{font-weight:600}.range-day:disabled:not(.is-unavailable){color:#c4bdb3;cursor:default}.booking-summary{background:#fffdf8;border-left:1px solid #d8d0c5;padding:clamp(50px,6vw,90px) 5vw}@property --border-angle{syntax: "<angle>"; initial-value: 0deg; inherits: false;}@keyframes borderLoading{to{--border-angle: 360deg}}@keyframes bookAttentionZoom{0%,to{transform:scale(1)}42%{transform:scale(1.2)}62%{transform:scale(1.16)}}@keyframes bookAttentionShake{0%,to{transform:translate(0) rotate(0)}18%{transform:translate(-4px) rotate(-1deg)}36%{transform:translate(4px) rotate(1deg)}54%{transform:translate(-3px) rotate(-.7deg)}72%{transform:translate(3px) rotate(.7deg)}88%{transform:translate(-1px)}}@keyframes bookBorderAppear{0%,to{opacity:0}14%,78%{opacity:1}}@keyframes quoteIn{0%{opacity:0;transform:translate(140px)}to{opacity:1;transform:translate(0)}}@keyframes quoteImageIn{0%{opacity:0;transform:translate(-140px) scale(1.025)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes quoteOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(140px)}}@keyframes quoteImageOut{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(-140px) scale(1.025)}}@keyframes villaReveal{0%{opacity:.35}to{opacity:1}}@keyframes villaImageReveal{0%{transform:scale(1.045)}to{transform:scale(1)}}@media(min-width:901px){html:has(.hero){scroll-snap-type:y mandatory}.hero,.intro-section,.experience-section,.villas-section,.quote-section,.site-footer{scroll-snap-align:start;scroll-snap-stop:always}.villa-fact{display:grid;grid-template-rows:50% auto auto;row-gap:8px;align-items:start;justify-items:center;justify-content:normal}.villa-fact>svg{align-self:end;transform:translateY(50%)}.villa-fact>.MuiTypography-caption{margin-top:10px}}@media(max-width:900px){.desktop-nav{display:none!important}.mobile-menu{display:inline-flex!important}.nav-shell{min-height:76px;padding-block:15px!important}.hero-copy h1{font-size:clamp(2.6rem,11.2vw,4.48rem)}.features,.footer-lead{grid-template-columns:1fr}.intro-section,.experience-section{height:auto;min-height:100svh}.experience-heading{grid-template-columns:1fr;gap:40px}.experience-heading h2{font-size:clamp(2.8rem,9vw,4.5rem)}.features{grid-template-columns:1fr;gap:70px}.feature-card:nth-child(1),.feature-card:nth-child(2),.feature-card:nth-child(3){grid-column:1;width:min(100%,520px);margin-top:0}.feature-card:nth-child(2){justify-self:end}.villas-section{height:auto;min-height:100svh}.villa-carousel{min-height:100svh;grid-template-rows:minmax(560px,72svh) auto}.villa-details{grid-template-columns:repeat(3,1fr)}.villa-description{grid-column:1 / -1;border-bottom:1px solid rgba(74,65,52,.14)}.villa-reserve{grid-column:1 / -1;margin:24px!important}.booking-layout{grid-template-columns:minmax(0,1fr)}.booking-calendar,.booking-calendar-header,.booking-intro,.range-calendar{min-width:0}.booking-steps{gap:24px}.booking-steps>span{font-size:0}.booking-steps b{margin:0;font-size:9px}.booking-summary{border-left:0;border-top:1px solid #d8d0c5}.booking-calendar-header{grid-template-columns:1fr;gap:40px}.range-calendar{max-width:none}.range-months{gap:22px}.quote-header{height:430px}.quote-header-copy{width:min(62vw,520px)}.quote-content{min-height:900px}.quote-pair{grid-template-columns:1fr 1fr;grid-template-rows:repeat(2,1fr)}.footer-navigation{grid-template-columns:repeat(2,1fr)}.footer-address{grid-column:1 / -1;margin-bottom:20px}.footer-bottom{grid-template-columns:1fr}.footer-bottom p:nth-child(2),.footer-bottom p:last-child{text-align:left}}@media(max-width:600px){.nav-shell{padding-inline:12px!important}.nav-shell>.MuiStack-root{gap:0}.wordmark{white-space:nowrap;font-size:12px!important;letter-spacing:.1em!important}.wordmark span{font-size:6px;letter-spacing:.26em}.nav-book{min-width:auto!important;padding-inline:8px!important}.nav-book{white-space:nowrap;font-size:10px!important}.hero-copy{padding-bottom:15vh!important}.hero-scroll{display:none}.quote-section{padding:0 0 3px}.quote-header{height:390px}.quote-header-shade{background:linear-gradient(90deg,#f7f3edf5,#f7f3edad 72%,#f7f3ed33)}.quote-header-copy{left:25px;width:calc(100% - 50px)}.quote-header-copy h2{font-size:clamp(3.5rem,18vw,5.5rem)}.quote-header-copy p{font-size:19px}.quote-content{height:auto;min-height:0;padding-top:16px;grid-template-rows:auto 48px}.quote-pair{grid-template-columns:1fr;grid-template-rows:none}.quote-media{height:180px}.quote-slide{min-height:250px;padding:26px 24px 30px}.quote-slide blockquote{font-size:25px}.intro-section,.experience-section{padding-top:45px;padding-bottom:45px}.story-gallery{margin-top:44px}.story-carousel{padding-inline:24px}.story-track{gap:20px}.story-frame{width:min(74vw,340px)}.story-frame-1,.story-frame-4,.story-frame-7{width:min(82vw,390px)}.story-frame-2,.story-frame-5{width:min(66vw,300px)}.story-frame-3,.story-frame-8{width:min(76vw,350px)}.story-copy{margin-top:58px}.experience-heading{gap:18px}.experience-heading h2{font-size:clamp(2.5rem,11vw,3.6rem)}.experience-intro{font-size:18px!important}.features{margin-top:64px;gap:58px}.villa-carousel{grid-template-rows:minmax(560px,82svh) auto}.villa-arrow{top:auto;bottom:18px;width:46px;height:46px;transform:none}.villa-arrow:hover{transform:scale(1.06)}.villa-arrow-left{left:18px}.villa-arrow-right{right:18px}.villa-dots{bottom:37px}.villa-stage-copy{left:25px;bottom:95px}.villa-stage-copy h2{font-size:clamp(3.6rem,18vw,5.2rem)}.villa-details{grid-template-columns:1fr 1fr}.villa-fact{min-height:145px}.villa-fact:nth-of-type(2n){border-left:0}.booking-steps{gap:18px}.booking-calendar{padding-inline:5vw}.booking-calendar h2{font-size:clamp(2.5rem,12vw,3.75rem)}.booking-villa-menu{gap:14px;overflow-x:auto;padding:5px;margin-left:-5px}.booking-villa-option{flex:0 0 86px}.date-fields{gap:10px}.range-months{grid-template-columns:repeat(3,minmax(245px,1fr));max-width:100vw;overflow-x:auto;margin-inline:-5vw;padding:0 5vw 18px;scroll-snap-type:x mandatory}.range-month{scroll-snap-align:start}.quote-section{height:auto;min-height:0;padding:0}.quote-section h2{font-size:clamp(2rem,9vw,3rem)}.quote-indicators{width:100%}.footer-lead{padding-bottom:48px}.footer-navigation{padding:48px 0}.footer-navigation{grid-template-columns:1fr 1fr;gap:50px 25px}}@media(prefers-reduced-motion:reduce){.hero-image{animation:none;transform:scale(1)}.desktop-nav a:after{transition:none}.booking-villa-image img,.booking-villa-option span:after{transition:none}.footer-link-group a:after{transition:none}.nav-book.book-attention-zoom,.nav-book.book-attention-shake{animation:none}.nav-book.book-attention-border:before{animation:none;opacity:1}.nav-book:hover:before,.nav-book:focus-visible:before{animation:none;background:currentColor}.quote-slide,.quote-media{animation:none}.feature-media video{display:none}.quote-slide.is-exiting,.quote-media.is-exiting{visibility:hidden}.villa-stage,.villa-stage>img{animation:none}}.marketing-page{min-height:100vh;color:#182019;background:#f3f0e8}.marketing-page.has-overlay-header{position:relative}.marketing-page.has-overlay-header .site-header.is-overlay{color:#f3f0e8}.marketing-page a{text-decoration:none}.primary-link{padding:13px 20px;color:#f3f0e8!important;background:#182019}.marketing-hero{padding:clamp(80px,12vw,170px) 8vw}.marketing-hero.compact{max-width:1100px;padding-bottom:clamp(60px,8vw,110px)}.marketing-hero h1,.detail-hero-copy h1,.detail-heading h1,.story-page h1{max-width:1000px;margin:12px 0 24px;font-family:Georgia,serif;font-size:clamp(3.2rem,8vw,8rem);font-weight:400;line-height:.92;letter-spacing:-.045em}.marketing-hero>p:last-child,.detail-heading-intro>p,.story-page header>p:last-child{max-width:680px;font-size:clamp(1.1rem,2vw,1.45rem);line-height:1.55}.marketing-page .eyebrow{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase}.route-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;border-top:1px solid rgba(24,32,25,.18);background:#1820192e}.villa-listing-hero{max-width:1100px}.villa-listing-hero>div{min-width:0}.villa-listing-hero>p:last-child{max-width:680px}.villa-listing-hero.is-compact{max-width:none;padding:48px 4vw 18px}.villa-listing-hero.is-compact h1{margin:8px 0 10px;font-size:clamp(3rem,5.2vw,5rem);line-height:.95}.villa-listing-hero.is-compact>p:last-child{max-width:760px;margin:0;font-size:clamp(.98rem,1.25vw,1.12rem);line-height:1.42}.villa-route-grid.is-compact.is-three-up{grid-template-columns:repeat(3,minmax(0,1fr))}.villa-route-grid.is-compact.is-four-up{grid-template-columns:repeat(4,minmax(0,1fr))}.route-card{display:flex;min-width:0;flex-direction:column;padding:4vw;background:#f3f0e8}.route-card img{width:100%;aspect-ratio:4/5;margin-bottom:28px;object-fit:cover}.journal-grid .route-card img{aspect-ratio:4/3}.villa-route-grid{--collection-media-height: clamp(190px, 27vh, 330px)}.journal-grid{--collection-media-height: clamp(220px, 31vh, 360px)}.route-card h2{margin:12px 0 16px;font-family:Georgia,serif;font-size:clamp(2rem,3.2vw,3.4rem);font-weight:400;line-height:1}.route-card>p:not(.eyebrow){min-height:5.5em;line-height:1.65}.villa-route-grid.is-compact .route-card{padding:18px 18px 16px}.villa-route-grid.is-compact .route-card img{aspect-ratio:auto;height:clamp(150px,20vh,220px);margin-bottom:12px}.villa-route-grid.is-compact .route-card h2{margin:6px 0 8px;font-size:clamp(1.65rem,2.05vw,2.5rem);line-height:.98}.villa-route-grid.is-compact .route-card>p:not(.eyebrow){min-height:0;margin:0;font-size:clamp(.82rem,.92vw,.98rem);line-height:1.42}.villa-route-grid.is-compact .route-card .eyebrow{margin:0}.text-link{display:inline-flex;align-items:center;gap:8px;margin-top:18px;border-bottom:1px solid;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase}.route-card .text-link{align-self:flex-start;margin-top:auto;padding-top:18px}.text-link svg{width:16px}.detail-heading,.story-page>header{padding:clamp(70px,10vw,145px) 8vw clamp(50px,8vw,100px)}.detail-heading{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);align-items:end;gap:clamp(50px,8vw,140px)}.detail-hero{position:relative;display:flex;min-height:100svh;color:#f3f0e8;overflow:hidden}.detail-hero-media{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%;margin:0;object-fit:cover}.detail-hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#141916a8,#14191633 62%,#14191657),linear-gradient(0deg,rgba(9,15,13,.42),transparent 48%)}.detail-hero-copy{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);align-items:end;gap:clamp(28px,5vw,96px);width:100%;margin-top:auto;padding:clamp(120px,18vh,180px) 4vw clamp(42px,7vh,72px)}.detail-heading-title h1{margin-bottom:0}.detail-hero-copy h1{margin:10px 0 0;color:#f3f0e8}.detail-hero-copy .eyebrow{color:#f3f0e8d1}.detail-heading-intro{padding-bottom:clamp(4px,1vw,14px)}.detail-heading-intro>p{margin:0}.detail-hero-copy .detail-heading-intro>p{max-width:520px;margin-left:auto;color:#f3f0e8eb;font-size:clamp(1.05rem,1.6vw,1.3rem);line-height:1.5}.detail-heading .primary-link,.detail-hero-copy .primary-link{display:inline-block;margin-top:22px;font-size:.76rem;letter-spacing:.14em;text-transform:uppercase}.detail-hero-copy .primary-link{color:#182019!important;background:#f3f0e8}.detail-hero-copy .detail-heading-intro{text-align:right}.story-page>img{display:block;width:92%;max-height:78vh;margin:0 auto;object-fit:cover}.detail-facts{display:grid;grid-template-columns:repeat(4,1fr);width:100%;margin:0;border:0;border-bottom:1px solid rgba(24,32,25,.18)}.detail-facts div{display:flex;flex-direction:column;gap:7px;padding:28px;border-right:1px solid rgba(24,32,25,.18)}.detail-facts div:last-child{border:0}.detail-facts span{font-size:.68rem;letter-spacing:.16em;text-transform:uppercase}.detail-facts strong{font-family:Georgia,serif;font-size:1.7rem;font-weight:400}.detail-copy{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr) minmax(230px,.62fr);gap:clamp(34px,4vw,76px);align-items:start;padding:clamp(50px,6vw,90px) 5vw}.detail-copy h2,.story-cta h2{margin:10px 0;font-family:Georgia,serif;font-size:clamp(2.6rem,5vw,5.5rem);font-weight:400;line-height:.98}.detail-copy-features{font-size:1.05rem;line-height:1.65}.detail-copy-features>p{margin-top:0}.detail-copy li{padding:14px 0;border-bottom:1px solid rgba(24,32,25,.18)}.detail-availability{padding:4px 0 8px clamp(24px,3vw,50px);border-left:1px solid rgba(24,32,25,.18)}.detail-availability h3{margin:12px 0;font-family:Georgia,serif;font-size:clamp(2rem,3vw,3.25rem);font-weight:400;line-height:1}.detail-availability>p:not(.eyebrow){margin-bottom:24px;line-height:1.55}.detail-availability .primary-link{display:block;width:100%;box-sizing:border-box;text-align:center;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase}.detail-next{display:flex;justify-content:space-between;padding:30px 8vw;border-top:1px solid rgba(24,32,25,.18)}.story-page>header{max-width:1200px}.story-page>header h1{font-size:clamp(3.2rem,7vw,7rem)}.story-body{max-width:760px;margin:0 auto;padding:clamp(70px,10vw,140px) 30px}.story-body section+section{margin-top:70px}.story-body h2{font-family:Georgia,serif;font-size:clamp(2rem,4vw,3.4rem);font-weight:400}.story-body p{font-size:1.12rem;line-height:1.8}.story-cta{margin:0 4vw 4vw;padding:clamp(55px,8vw,100px);color:#f3f0e8;background:#182019}.story-cta p{max-width:640px;line-height:1.6}.story-cta a{display:inline-block;margin:20px 30px 0 0;border-bottom:1px solid;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase}@media(min-width:801px)and (min-height:700px){.compact-listing-page{min-height:100svh}.compact-listing-page main{display:grid;grid-template-rows:auto minmax(0,1fr);height:calc(100svh - 96px);min-height:604px}.compact-listing-page .marketing-hero.compact{width:100%;max-width:none;padding:clamp(24px,3.4vh,42px) 4vw clamp(20px,2.8vh,34px)}.compact-listing-page .marketing-hero h1{margin:7px 0 10px;font-size:clamp(2.8rem,4.7vw,5.2rem);line-height:.92}.compact-listing-page .marketing-hero>p:last-child{max-width:760px;margin:0;font-size:clamp(.95rem,1.25vw,1.15rem);line-height:1.4}.compact-listing-page .route-grid{min-height:0}.compact-listing-page .route-card{display:flex;flex-direction:column;min-width:0;min-height:0;padding:clamp(16px,2vw,30px) clamp(18px,2.4vw,38px)}.compact-listing-page .route-card-media{position:relative;flex-shrink:0;height:var(--collection-media-height);margin-bottom:clamp(12px,1.8vh,22px);overflow:hidden}.compact-listing-page .route-card-media img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;min-height:100%;margin:0;aspect-ratio:auto}.compact-listing-page .route-card h2{margin:clamp(9px,1.2vh,14px) 0 clamp(11px,1.5vh,18px);font-size:clamp(1.65rem,2.25vw,2.7rem);line-height:.98}.compact-listing-page .route-card>p:not(.eyebrow){min-height:0;margin:0;font-size:clamp(.82rem,.95vw,.98rem);line-height:1.45}.compact-listing-page .route-card .eyebrow{margin:0}.compact-listing-page .text-link{margin-top:auto;padding-top:clamp(10px,1.5vh,18px);align-self:flex-start}}@media(min-width:801px)and (max-width:1200px){.compact-listing-page main{height:auto}.villa-listing-hero.is-compact{padding:42px 5vw 22px}.villa-route-grid.is-compact.is-three-up,.villa-route-grid.is-compact.is-four-up{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:800px){.villa-listing-hero.is-compact{padding:42px 5vw 26px}.villa-listing-hero.is-compact h1{margin-block:8px 14px;font-size:clamp(2.7rem,14vw,4rem)}.villa-listing-hero.is-compact>p:last-child{font-size:1rem;line-height:1.45}.route-grid,.villa-route-grid.is-compact,.villa-route-grid.is-compact.is-three-up,.villa-route-grid.is-compact.is-four-up{grid-template-columns:1fr}.route-card{padding:8vw 5vw}.route-card>p:not(.eyebrow){min-height:0}.villa-route-grid.is-compact .route-card{padding:28px 5vw 34px}.villa-route-grid.is-compact .route-card img,.villa-route-grid.is-compact .journal-grid .route-card img{height:clamp(190px,29vh,250px);aspect-ratio:auto;margin-bottom:18px}.villa-route-grid.is-compact .route-card h2{font-size:clamp(2rem,10vw,3rem)}.detail-heading,.detail-hero-copy{grid-template-columns:1fr;gap:22px}.detail-hero-copy{padding:120px 5vw 36px}.detail-hero-copy .detail-heading-intro,.detail-hero-copy .detail-heading-intro>p{margin-left:0;text-align:left}.detail-heading-intro{padding-bottom:0}.detail-copy{grid-template-columns:1fr;padding:56px 5vw}.detail-availability{padding:30px 0 0;border-top:1px solid rgba(24,32,25,.18);border-left:0}.detail-availability .primary-link{width:auto}.detail-facts{grid-template-columns:1fr 1fr}.detail-facts div{padding:18px 12px}.detail-facts div:nth-child(2){border-right:0}.detail-facts div:nth-child(-n+2){border-bottom:1px solid rgba(24,32,25,.18)}.detail-facts strong{font-size:1.15rem}.marketing-footer{align-items:flex-start;gap:40px}.marketing-footer div{flex-direction:column;align-items:flex-start;gap:12px}}
