:root{--chalk:#f7f3eb;--limestone:#e8e0d2;--olive:#303a24;--night:#171d16;--pool:#71ced1;--amber:#efa33b}*{box-sizing:border-box}html,body{background:var(--night);min-height:100%;margin:0}html{scroll-behavior:smooth;scroll-padding-top:5.5rem}body{font-family:var(--font-body), sans-serif;color:var(--chalk)}button,a{font:inherit}button{color:inherit}.landing{isolation:isolate;background:var(--night);min-height:100svh;position:relative;overflow:hidden}.landing__image,.villa-image,.landing__wash{position:absolute;inset:0}.landing__image{z-index:-3;transition:transform 1.4s cubic-bezier(.2,.76,.2,1),filter .7s}.landing__image img,.villa-image img{object-fit:cover}.landing__image picture{position:absolute;inset:0}.landing__image img{object-position:center 30%}.villa-image{z-index:-2;opacity:0;pointer-events:none;transition:clip-path .88s cubic-bezier(.2,.76,.2,1),opacity .26s,transform 1.2s cubic-bezier(.2,.76,.2,1);overflow:hidden;transform:scale(1.035)}.villa-image--west{clip-path:inset(0 50% 0 0)}.villa-image--east{clip-path:inset(0 0 0 50%)}.villa-image--west img{object-position:46% center}.villa-image--east img{object-position:54% center}.landing__wash{z-index:-1;pointer-events:none;background:linear-gradient(#0d120d6b 0%,#0000 35%),linear-gradient(#0000 62%,#0b0f0bc2 100%),linear-gradient(90deg,#0c100c47,#0000 43%)}.site-header{z-index:3;justify-content:space-between;align-items:flex-start;padding:clamp(1.4rem,3vw,2.6rem) clamp(1.25rem,4vw,4.5rem);display:flex;position:absolute;inset:0 0 auto}.site-header p{letter-spacing:.2em;text-transform:uppercase;margin:.55rem 0 0;font-size:.67rem}.site-header__links{align-items:center;gap:clamp(1rem,2.5vw,2.5rem);display:flex}.site-header__links>a,.site-header__links>button{color:inherit;cursor:pointer;letter-spacing:.2em;text-transform:uppercase;background:0 0;border:0;margin-top:.55rem;padding:0;font-size:.67rem;text-decoration:none}.wordmark{color:inherit;line-height:.8;text-decoration:none;display:grid}.wordmark span{font-family:var(--font-display), serif;font-size:clamp(1.7rem,2.4vw,2.45rem);font-weight:500}.wordmark small{letter-spacing:.42em;text-transform:uppercase;justify-self:end;margin-top:.65rem;font-size:.57rem}.intro{z-index:2;max-width:38rem;transition:opacity .45s,transform .7s;animation:1.1s cubic-bezier(.2,.75,.2,1) .18s both arrive;position:absolute;top:19%;left:clamp(1.25rem,7vw,8rem)}.intro__eyebrow,.intro__prompt{letter-spacing:.24em;text-transform:uppercase;font-size:.66rem}.intro__eyebrow{margin:0 0 1rem}.intro h1{font-family:var(--font-display), serif;letter-spacing:-.045em;text-wrap:balance;text-shadow:0 2px 24px #0000002e;margin:0;font-size:clamp(4rem,8vw,8.5rem);font-weight:400;line-height:.75}.intro__prompt{align-items:center;gap:.9rem;margin:1.7rem 0 0;display:flex}.intro__prompt:before{content:"";background:currentColor;width:2.7rem;height:1px}.seam{z-index:2;background:linear-gradient(#0000,#f7f3ebb8);width:1px;height:25%;transition:opacity .4s,transform .9s cubic-bezier(.2,.76,.2,1);position:absolute;bottom:2.5rem;left:50%}.seam span{background:var(--amber);border-radius:50%;width:.5rem;height:.5rem;position:absolute;bottom:-.22rem;left:-.22rem;box-shadow:0 0 1.5rem #efa33bbf}.transition-seam{z-index:5;opacity:0;pointer-events:none;background:linear-gradient(#0000,#f7f3ebe0 20%,#71ced1f2 50%,#f7f3ebe0 80%,#0000);width:1px;position:absolute;top:0;bottom:0;left:50%;box-shadow:0 0 2rem #71ced147}.villa-choice{z-index:3;grid-template-columns:1fr 1fr;gap:clamp(4rem,12vw,14rem);transition:opacity .35s,transform .6s;display:grid;position:absolute;inset:auto clamp(1.25rem,4vw,4.5rem) clamp(1.7rem,4vw,3.5rem)}.villa-choice__option{cursor:pointer;text-align:left;color:inherit;background:0 0;border:0;border-top:1px solid #f7f3eb73;align-items:center;gap:1.1rem;padding:1rem 0 0;text-decoration:none;transition:border-color .25s,transform .35s,opacity .35s;display:flex}.villa-choice__option:last-child{text-align:right;flex-direction:row-reverse}.villa-choice__option small,.villa-choice__option strong{display:block}.villa-choice__option small{letter-spacing:.17em;text-transform:uppercase;margin-bottom:.25rem;font-size:.57rem}.villa-choice__option strong{font-family:var(--font-display), serif;font-size:clamp(1.7rem,2.7vw,3rem);font-weight:500}.villa-choice__direction{border:1px solid #f7f3eb8c;border-radius:50%;flex:0 0 2.5rem;place-items:center;width:2.5rem;height:2.5rem;transition:color .25s,background .25s,border-color .25s;display:grid}.villa-choice__option:hover,.villa-choice__option:focus-visible{border-color:var(--pool);outline:none;transform:translateY(-.3rem)}.villa-choice__option:hover .villa-choice__direction,.villa-choice__option:focus-visible .villa-choice__direction{color:var(--night);border-color:var(--pool);background:var(--pool)}.landing[data-active=west] .landing__image{transform:scale(1.025)translate(.45%)}.landing[data-active=east] .landing__image{transform:scale(1.025)translate(-.45%)}.landing[data-active=west] .villa-choice__option:last-child,.landing[data-active=east] .villa-choice__option:first-child{opacity:.48}.villa-reveal{z-index:4;visibility:hidden;pointer-events:none;opacity:0;background:linear-gradient(#0000 32%,#090d09e0);align-items:end;padding:clamp(1.5rem,6vw,6rem);transition:opacity .6s .3s,visibility 0s .9s;display:grid;position:absolute;inset:0}.villa-reveal__content{max-width:46rem}.villa-reveal p,.villa-reveal span{letter-spacing:.17em;text-transform:uppercase;font-size:.67rem}.villa-reveal h2{font-family:var(--font-display), serif;margin:.2rem 0 .5rem;font-size:clamp(4rem,9vw,9rem);font-weight:400;line-height:.9}.villa-reveal button{cursor:pointer;letter-spacing:.12em;text-transform:uppercase;background:0 0;border:0;border-bottom:1px solid;margin-top:1.6rem;padding:0 0 .35rem;font-size:.67rem;display:block}.landing[data-selected] .intro,.landing[data-selected] .villa-choice{opacity:0;pointer-events:none;transform:translateY(1rem)}.landing[data-selected] .seam{opacity:0}.landing[data-selected=west] .villa-image--west,.landing[data-selected=east] .villa-image--east{clip-path:inset(0);opacity:1;transition-delay:.42s,.42s,.42s;transform:scale(1)}.landing[data-selected=west] .transition-seam{animation:.92s cubic-bezier(.2,.76,.2,1) .4s both sweep-west}.landing[data-selected=east] .transition-seam{animation:.92s cubic-bezier(.2,.76,.2,1) .4s both sweep-east}.landing[data-reveal-ready=true] .villa-reveal{visibility:visible;pointer-events:auto;opacity:1;transition:opacity .6s,visibility}.landing[data-selected=west] .landing__image{transform:scale(1.34)translate(12%,-2%)}.landing[data-selected=east] .landing__image{transform:scale(1.34)translate(-12%,-2%)}.photo-note{z-index:2;color:#f7f3ebb8;letter-spacing:.2em;text-transform:uppercase;transform-origin:50%;margin:0;font-size:.54rem;transition:opacity .3s;position:absolute;top:50%;right:1.1rem;transform:translate(50%)rotate(90deg)}.landing[data-selected] .photo-note{opacity:0}@keyframes arrive{0%{opacity:0;transform:translateY(1.5rem)}}@keyframes sweep-west{0%{opacity:0;transform:translate(0)}12%,72%{opacity:1}to{opacity:0;transform:translate(50vw)}}@keyframes sweep-east{0%{opacity:0;transform:translate(0)}12%,72%{opacity:1}to{opacity:0;transform:translate(-50vw)}}@media (max-width:700px){.site-header p,.photo-note,.seam{display:none}.landing__image img{object-position:center}.villa-image--west img{object-position:42% center}.villa-image--east img{object-position:58% center}.intro{top:17%}.intro h1{font-size:clamp(3.8rem,18vw,6rem)}.villa-choice{grid-template-columns:1fr;gap:.75rem;inset:auto 1.25rem 1.4rem}.villa-choice__option,.villa-choice__option:last-child{text-align:left;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#171d1657;border:1px solid #f7f3eb59;flex-direction:row;justify-content:space-between;min-height:4.4rem;padding:.8rem 1rem}.villa-choice__option:last-child .villa-choice__direction{order:2}.villa-choice__option strong{font-size:1.6rem}.landing[data-selected=west] .landing__image{transform:scale(1.5)translate(15%,-1%)}.landing[data-selected=east] .landing__image{transform:scale(1.5)translate(-15%,-1%)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
