@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-driftwood);--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{min-height:100svh;position:relative;display:flex;color:var(--oe-color-warm-white);overflow:hidden}.hero-image{position:absolute;top:0;right:0;bottom:0;left:0;background:url(/hero/sunset-pool-16x9-v2.png) center / cover no-repeat;transform-origin:35% 42%;animation:heroSunPush 4s ease-in-out infinite alternate}.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}.hero-copy{position:relative;z-index:1;align-self:end;padding:160px 4vw 10vh!important}.hero-copy h1{font-size:clamp(3.4rem,7.4vw,7.7rem);max-width:1100px;margin:18px 0 38px}.hero-copy .MuiButton-root{background:#f2e8d9;color:#211f1a;min-width:175px}.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;min-height:760px;padding:clamp(26px,3.5vh,42px) 0 clamp(24px,3.5vh,42px);display:flex;flex-direction:column;overflow:hidden;background:#f4efe7}.story-heading{position:relative;z-index:0;display:block!important;max-width:none!important;padding-inline:4vw!important}.story-heading .MuiTypography-overline{position:relative;z-index:2;color:#9a7951}.story-heading h2{width:100%;margin-top:clamp(10px,1.5vh,18px);background:transparent;color:var(--oe-color-charcoal);font-size:clamp(2.9rem,5.2vw,6rem);line-height:.92;letter-spacing:-.035em;text-align:center;white-space:nowrap;text-shadow:0 1px 24px rgba(128,111,88,.08)}.story-gallery{position:relative;z-index:1;width:100%;margin-top:clamp(16px,2vh,24px)}.story-carousel{width:100%;overflow-x:auto;overflow-y:hidden;padding-block:8px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);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:1px solid #9a7951;outline-offset:-2px}.story-track{display:flex;align-items:center;width:max-content;will-change:transform}.story-frame{--frame-tilt: 0deg;flex:0 0 auto;width:clamp(250px,27vw,440px);height:clamp(300px,42vh,440px);box-sizing:border-box;margin-inline:clamp(14px,2vw,34px);padding:clamp(6px,.65vw,10px);overflow:hidden;border:1px solid rgba(154,121,81,.48);border-radius:2px;background:#f4efe76b;box-shadow:0 18px 46px #2e271f1c,inset 0 0 0 1px #ffffff9e;transform:rotate(var(--frame-tilt));transition:transform .65s cubic-bezier(.2,.7,.2,1),box-shadow .65s ease,border-color .65s ease}.story-frame img{opacity:.88;border-radius:1px;transition:transform 1.1s cubic-bezier(.2,.7,.2,1),filter .6s ease,opacity .6s ease;filter:saturate(.88) contrast(.98)}.story-frame:hover{z-index:2;border-color:#9a7951cc;box-shadow:0 28px 64px #2e271f2b,inset 0 0 0 1px #ffffffc2;transform:translateY(-9px) rotate(0) scale(1.15)}.story-frame:hover img{opacity:.93;transform:scale(1.15);filter:saturate(1) contrast(1)}.story-frame-0,.story-frame-5{--frame-tilt: -.45deg}.story-frame-2,.story-frame-7{--frame-tilt: .55deg}.story-frame-3,.story-frame-8{--frame-tilt: -.25deg}.story-frame-1,.story-frame-4,.story-frame-7{width:clamp(260px,30vw,480px);height:clamp(245px,33vh,350px)}.story-frame-2,.story-frame-5{width:clamp(280px,32vw,520px);height:clamp(330px,47vh,500px)}.story-frame-3,.story-frame-8{width:clamp(250px,25vw,410px);height:clamp(280px,38vh,400px)}.story-copy{width:92%!important;max-width:none!important;margin-top:clamp(18px,2.5vh,30px);padding:clamp(14px,2vh,22px) 0 34px!important;border-top:1px solid rgba(154,121,81,.34)}.story-copy>.MuiTypography-overline{display:block;margin-bottom:8px;color:#9a7951}.story-typewriter{position:relative}.story-typewriter-ghost,.story-typewriter-live{font-family:Cormorant Garamond,serif!important;font-size:clamp(1.05rem,1.4vw,1.45rem)!important;line-height:1.48!important;letter-spacing:-.004em!important}.story-typewriter-ghost{visibility:hidden}.story-typewriter-live{position:absolute;top:0;right:0;bottom:0;left:0}.story-caret{display:inline-block;width:1px;height:.82em;margin-left:4px;background:#9a7951;vertical-align:-.06em;animation:storyCaret .8s steps(1) infinite}.story-caret.is-complete{animation-iteration-count:3}.experience-section{position:relative;height:100svh;overflow:hidden;background:var(--oe-color-charcoal);color:var(--oe-color-sand);padding:clamp(42px,6vh,72px) 0}.experience-section h2{font-size:clamp(3rem,5.8vw,5.7rem)}.experience-section>.MuiContainer-root{height:100%;padding:0 4vw 34px!important;display:flex;flex-direction:column}.experience-heading{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:8vw;align-items:end}.experience-heading h2{max-width:760px;margin-top:16px}.experience-intro{max-width:520px;color:#ffffffad;font-family:Cormorant Garamond,serif!important;font-size:24px!important;line-height:1.5!important}.features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,3vw,56px);flex:1;min-height:0;margin-top:clamp(28px,5vh,55px);border-top:1px solid rgba(255,255,255,.22);padding-top:clamp(22px,3vh,35px)}.feature-card{min-height:0;display:grid;grid-template-rows:minmax(0,1fr) auto auto}.feature-media{position:relative;min-height:0;margin-bottom:18px;overflow:hidden;cursor:pointer;background:#171916;outline:none}.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:1px solid #c6ab82;outline-offset:-5px}.feature-card .MuiTypography-overline{color:#c6ab82}.feature-card h3{margin-top:10px;font-size:clamp(25px,2.2vw,36px);line-height:1.1}.villas-section{position:relative;height:100svh;min-height:720px;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(180deg,rgba(12,20,18,.52) 0%,transparent 28%),linear-gradient(90deg,rgba(16,22,19,.48) 0%,transparent 46%),linear-gradient(0deg,rgba(11,16,14,.55) 0%,transparent 40%)}.villa-toolbar{position:absolute;z-index:3;inset:0 0 auto;min-height:104px;padding:20px 4vw;display:flex;align-items:center;justify-content:space-between;color:#fffdf8;border-bottom:1px solid rgba(255,255,255,.28);background:#121d1a14;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.villa-toolbar>div{display:flex;align-items:baseline;gap:22px}.villa-toolbar .MuiTypography-overline{opacity:.76;white-space:nowrap}.villa-toolbar h2{font-size:clamp(2.25rem,4vw,4.7rem);line-height:.95}.villa-toolbar .MuiButton-root{position:relative;color:inherit;white-space:nowrap;padding:12px 0;border-radius:0}.villa-toolbar .MuiButton-root:after{content:"";position:absolute;left:0;right:0;bottom:7px;height:1px;background:currentColor;transform:scaleX(.28);transform-origin:right;transition:transform .42s cubic-bezier(.22,.8,.25,1)}.villa-toolbar .MuiButton-root:hover:after,.villa-toolbar .MuiButton-root:focus-visible:after{transform:scaleX(1);transform-origin:left}.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:#211f1a!important;background:#fffdf8eb!important;transform:translateY(-50%);transition:transform .3s ease,background-color .3s ease!important}.villa-arrow:hover{background:#fffdf8!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:#9a7951;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:#9a7951;font-size:29px}.villa-fact .MuiTypography-caption{text-transform:uppercase;letter-spacing:.14em;color:#777064;font-size:9px}.villa-fact h3{font-size:26px;line-height:1}.villa-detail-link button,.villa-detail-link a{display:inline-flex;align-items:center;gap:4px;padding:0;border:0;border-bottom:1px solid #9a7951;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:#9a7951!important}.quote-section{position:relative;width:100%;height:100svh;min-height:700px;box-sizing:border-box;text-align:center;padding:clamp(70px,10vh,105px) 0 clamp(72px,9vh,96px);background:#e8dfd2;display:flex;align-items:center;overflow:hidden}.quote-content{position:relative;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1.18fr);gap:10px;height:min(560px,calc(100svh - 190px));min-height:0;align-items:center}.quote-media{position:relative;z-index:1;grid-column:1;grid-row:1;width:100%;height:520px;overflow:hidden;animation:quoteImageIn 1.1s cubic-bezier(.2,.7,.2,1) both}.quote-media img{filter:saturate(.82) contrast(.96)}.quote-slide{position:relative;z-index:1;grid-column:2;grid-row:1;width:100%;padding:55px 0 55px 5%;text-align:left;background:transparent;animation:quoteIn 1.1s cubic-bezier(.2,.75,.2,1) both}.quote-section h2{font-size:clamp(2.8rem,5vw,5rem);margin:0 0 40px}.quote-slide>.MuiTypography-overline{display:block;text-align:center}.quote-media.is-exiting{z-index:2;animation:quoteImageOut 1.1s cubic-bezier(.4,0,.2,1) both}.quote-slide.is-exiting{z-index:2;animation:quoteOut 1.1s cubic-bezier(.4,0,.2,1) both}.quote-indicators{position:absolute;z-index:3;right:0;bottom:0;display:flex;align-items:center;justify-content:center;width:calc((100% - 10px)*.5413);gap:12px}.quote-indicators button{width:7px;height:7px;padding:0;border:0;border-radius:50%;cursor:pointer;background:#211f1a47;transition:transform .25s ease,background-color .25s ease}.quote-indicators button:hover{background:#211f1a94}.quote-indicators button:focus-visible{outline:2px solid #173c3a;outline-offset:4px}.quote-indicators button.is-active{background:#211f1a;transform:scale(1.35)}.quote-progress-track{--wave-shape: radial-gradient(10px 6px at 12px 100%, transparent 58%, #000 62% 76%, transparent 80%) 0 -1px / 56px 12px repeat-x, radial-gradient(16px 9px at 40px 100%, transparent 60%, #000 63% 75%, transparent 78%) 0 -2px / 56px 12px repeat-x;position:absolute;left:0;right:0;bottom:28px;height:12px;overflow:visible}.quote-progress-track:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#211f1a24;-webkit-mask:var(--wave-shape);mask:var(--wave-shape)}.quote-progress-fill{position:absolute;inset:0 auto 0 0;width:100%;background:#9a7951;animation:quoteProgress 5s linear forwards;-webkit-mask:var(--wave-shape);mask:var(--wave-shape)}.quote-surfer{position:absolute;z-index:2;left:0;bottom:7px;width:48px;height:30px;object-fit:contain;transform:translate(-8px);transform-origin:50% 82%;animation:surferProgress 5s linear forwards}footer{position:relative;background:#171815;color:#f3ede3;padding:80px 4vw 76px}.footer-wordmark{font-family:Cormorant Garamond,serif!important;font-size:clamp(3.5rem,9.6vw,10rem)!important;line-height:1!important;letter-spacing:.035em!important;border-bottom:1px solid rgba(255,255,255,.2);padding-bottom:55px}.footer-lead{display:grid;grid-template-columns:1.5fr .7fr .5fr;gap:6vw;align-items:center;padding:70px 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>.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}@keyframes heroSunPush{0%{transform:scale(1)}to{transform:scale(1.025)}}@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 quoteProgress{0%{width:0}to{width:100%}}@keyframes surferProgress{0%{left:0;transform:translate(-8px) translateY(2px) rotate(-3deg)}12.5%{transform:translate(-8px) translateY(-7px) rotate(5deg)}25%{transform:translate(-8px) translateY(-1px) rotate(-2deg)}37.5%{transform:translate(-8px) translateY(-8px) rotate(4deg)}50%{transform:translate(-8px) translateY(2px) rotate(-4deg)}62.5%{transform:translate(-8px) translateY(-7px) rotate(5deg)}75%{transform:translate(-8px) translateY(-1px) rotate(-2deg)}87.5%{transform:translate(-8px) translateY(-8px) rotate(4deg)}to{left:calc(100% - 40px);transform:translate(0) translateY(2px) rotate(-3deg)}}@keyframes villaReveal{0%{opacity:.35}to{opacity:1}}@keyframes villaImageReveal{0%{transform:scale(1.045)}to{transform:scale(1)}}@keyframes storyDrift{0%{transform:translate(-50%)}to{transform:translate(0)}}@keyframes storyCaret{50%{opacity:0}}@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(3.25rem,14vw,5.6rem)}.features,.footer-lead{grid-template-columns:1fr}.intro-section{height:auto;min-height:100svh}.story-heading h2{font-size:clamp(2.7rem,6.6vw,4.8rem)}.experience-heading{grid-template-columns:1fr;gap:40px}.experience-heading h2{font-size:clamp(2.8rem,9vw,4.5rem)}.features{grid-template-columns:repeat(3,min(72vw,430px));gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:12px}.feature-card{scroll-snap-align:start}.villas-section{height:auto;min-height:100svh}.villa-carousel{min-height:100svh;grid-template-rows:minmax(560px,72svh) auto}.villa-toolbar{min-height:92px}.villa-toolbar>div{display:block}.villa-toolbar .MuiTypography-overline{display:none}.villa-toolbar h2{font-size:clamp(2.15rem,6vw,3.4rem)}.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:1fr}.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-section{height:100svh;min-height:700px}.quote-content{height:min(560px,calc(100svh - 180px))}.quote-media{height:min(470px,calc(100svh - 230px))}.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-book{min-width:auto!important;padding-inline:8px!important}.wordmark{font-size:14px!important}.hero-copy{padding-bottom:15vh!important}.hero-scroll{display:none}.quote-section{padding-top:70px;padding-bottom:62px}.intro-section,.experience-section{padding-top:45px;padding-bottom:45px}.story-heading h2{font-size:7.1vw;line-height:.92;text-align:center}.story-carousel{margin-top:28px}.story-frame{margin-inline:10px}.story-copy{margin-top:28px}.story-typewriter-ghost,.story-typewriter-live{font-size:clamp(1.55rem,7vw,2rem)!important}.experience-heading{gap:18px}.experience-heading h2{font-size:clamp(2.5rem,11vw,3.6rem)}.experience-intro{font-size:18px!important}.features{grid-template-columns:repeat(3,82vw);margin-top:24px;padding-top:20px}.villa-carousel{grid-template-rows:minmax(560px,82svh) auto}.villa-toolbar{min-height:78px;padding:14px 20px}.villa-toolbar h2{font-size:clamp(1.8rem,9vw,2.65rem)}.villa-toolbar .MuiButton-root{min-width:auto;font-size:0}.villa-toolbar .MuiButton-endIcon{margin:0}.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));overflow-x:auto;margin-inline:-5vw;padding:0 5vw 18px;scroll-snap-type:x mandatory}.range-month{scroll-snap-align:start}.quote-section{height:100svh;min-height:700px;padding-top:58px;padding-bottom:54px}.quote-content{grid-template-columns:1fr;grid-template-rows:minmax(260px,48svh) auto;gap:10px;width:100%;height:100%;min-height:0}.quote-media{grid-column:1;grid-row:1;width:100%;height:100%}.quote-slide{grid-column:1;grid-row:2;width:100%;padding:32px 0 45px;background:transparent}.quote-section h2{font-size:clamp(2.55rem,12vw,4rem)}.quote-indicators{width:100%}.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}.story-track{animation:none;transform:translate(0)}.story-frame{transform:none;transition:none}.story-frame img{transition:none}.story-caret{display:none}.quote-progress-fill{animation:none;width:100%}.quote-surfer{animation:none;left:calc(100% - 40px);transform:none}}.marketing-page{min-height:100vh;color:#182019;background:#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-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>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}.route-card{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}.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}.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}.text-link svg{width:16px}.detail-heading,.story-page>header{padding:clamp(70px,10vw,145px) 8vw clamp(50px,8vw,100px)}.detail-heading .primary-link{display:inline-block;margin-top:22px;font-size:.76rem;letter-spacing:.14em;text-transform:uppercase}.detail-hero-image,.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:92%;margin:0 auto;border:1px solid rgba(24,32,25,.18);border-top:0}.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 img,.compact-listing-page .journal-grid .route-card img{height:clamp(190px,27vh,330px);aspect-ratio:auto;margin-bottom:clamp(12px,1.8vh,22px)}.compact-listing-page .route-card h2{margin:6px 0 8px;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(max-width:800px){.route-grid{grid-template-columns:1fr}.route-card{padding:8vw 5vw}.route-card>p:not(.eyebrow){min-height:0}.compact-listing-page .marketing-hero.compact{padding:42px 5vw 34px}.compact-listing-page .marketing-hero h1{margin-block:8px 14px;font-size:clamp(2.7rem,14vw,4rem)}.compact-listing-page .marketing-hero>p:last-child{font-size:1rem;line-height:1.45}.compact-listing-page .route-card{padding:28px 5vw 34px}.compact-listing-page .route-card img,.compact-listing-page .journal-grid .route-card img{height:clamp(190px,29vh,250px);aspect-ratio:auto;margin-bottom:18px}.compact-listing-page .route-card h2{font-size:clamp(2rem,10vw,3rem)}.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}}
