@font-face{font-family:Gloock;font-style:normal;font-weight:400;font-display:swap;src:url(assets/fonts/gloock-latin-400.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Manrope;font-style:normal;font-weight:400 700;font-display:swap;src:url(assets/fonts/manrope-latin-400-700.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ink: #0b3540;--ink-soft: #315862;--lagoon: #0e717b;--lagoon-bright: #55babc;--sea-glass: #b9dfde;--sky: #cfe8ed;--salt: #f7f9f7;--shell: #e6eeeb;--sunstone: #d7b46f;--sunstone-deep: #c69d55;--sunstone-line: rgba(215, 180, 111, .58);--error: #863d36;--line: rgba(11, 53, 64, .2);--light-line: rgba(247, 249, 247, .24);--display: "Gloock", Georgia, serif;--body: "Manrope", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--container: min(1480px, calc(100vw - 40px) );--wide: min(1800px, calc(100vw - 32px) );--ease-out: cubic-bezier(.25, 1, .5, 1);--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--z-header: 100;--z-overlay: 200}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{margin:0;color:var(--ink);background:var(--salt);font-family:var(--body);text-rendering:optimizeLegibility;overflow-x:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{border:0}::selection{color:var(--ink);background:var(--sea-glass)}:focus-visible{outline:2px solid var(--sunstone);outline-offset:4px}.skip-link{position:fixed;top:16px;left:16px;z-index:1000;padding:12px 16px;color:var(--salt);background:var(--ink);transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.site-header{position:fixed;inset:0 0 auto;z-index:var(--z-header);display:flex;align-items:center;justify-content:space-between;min-height:88px;padding:18px clamp(22px,4vw,64px);color:var(--salt);isolation:isolate;transform:translateY(0);transition:transform .28s var(--ease-out-expo),min-height .36s var(--ease-out-expo),padding .36s var(--ease-out-expo),color .36s var(--ease-out-expo),box-shadow .36s var(--ease-out-expo)}.site-header.is-hidden{transform:translateY(calc(-100% - 2px))}.site-header:focus-within,body.nav-open .site-header{transform:translateY(0)}.site-header:before{content:"";position:absolute;inset:0;z-index:-1;background:#f7f9f7f5;border-bottom:1px solid var(--sunstone-line);box-shadow:0 10px 30px #0b35400f;opacity:0;transform:translateY(-18px);backdrop-filter:blur(14px);transition:opacity .42s var(--ease-out-expo),transform .42s var(--ease-out-expo)}.site-header.is-scrolled{color:var(--ink)}.site-header.is-scrolled:before,body.nav-open .site-header:before{opacity:1;transform:translateY(0)}.brand{display:grid;width:clamp(108px,8vw,142px);color:inherit;font-family:var(--display);font-size:clamp(1.65rem,2.2vw,2.3rem);line-height:.86}.brand-wave{width:100%;height:auto;margin-bottom:2px;filter:brightness(0) invert(1);transition:filter .36s var(--ease-out-expo),transform .36s var(--ease-out-expo)}.site-header.is-scrolled .brand-wave{filter:brightness(0) saturate(100%) invert(19%) sepia(31%) saturate(1088%) hue-rotate(143deg) brightness(91%)}.brand small{margin-top:5px;padding-left:2px;font-family:var(--body);font-size:.5rem;font-weight:700;letter-spacing:.46em;text-transform:uppercase}.primary-nav{display:flex;align-items:center;gap:clamp(22px,2.7vw,44px);font-size:.78rem;font-weight:700}.primary-nav a{position:relative;display:inline-flex;min-height:44px;align-items:center}.primary-nav a:not(.nav-cta):after{content:"";position:absolute;right:0;bottom:7px;left:0;height:1px;background:var(--sunstone);transform:scaleX(0);transform-origin:left;transition:transform .26s var(--ease-out-expo)}.primary-nav a:hover:after,.primary-nav a.is-active:after,.primary-nav a:focus-visible:after{transform:scaleX(1)}.primary-nav .nav-cta{position:relative;overflow:hidden;isolation:isolate;min-height:46px;padding:0 20px;border:1px solid currentColor;border-radius:4px;background:transparent;transition:color .36s var(--ease-out-expo),background-color .36s var(--ease-out-expo),border-color .36s var(--ease-out-expo),transform .22s var(--ease-out-expo)}.primary-nav .nav-cta:before{content:"";position:absolute;inset:-1px;z-index:-1;pointer-events:none;background:var(--salt);transform:translateY(105%);transform-origin:bottom;transition:transform .52s var(--ease-out-expo);will-change:transform}.primary-nav .nav-cta:hover,.primary-nav .nav-cta:focus-visible{color:var(--ink);transform:translateY(-1px)}.primary-nav .nav-cta:hover:before,.primary-nav .nav-cta:focus-visible:before{transform:translateY(0)}.site-header.is-scrolled .primary-nav .nav-cta:hover{color:var(--salt)}.site-header.is-scrolled .primary-nav .nav-cta:before{background:var(--ink)}.nav-toggle{display:none;width:48px;height:48px;color:var(--ink);background:transparent;border:1px solid currentColor;border-radius:2px;cursor:pointer;transition:color .22s var(--ease-out-expo),background-color .22s var(--ease-out-expo),border-color .22s var(--ease-out-expo)}.nav-toggle span{display:block;width:20px;height:1px;margin:6px auto;background:currentColor;transition:transform .22s var(--ease-out-expo),opacity .22s var(--ease-out-expo)}.hero{position:relative;display:flex;align-items:center;overflow:hidden;color:var(--salt);background:#fff}@media(min-width:1024px){.hero{min-height:100vh}}.hero-picture,.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%}.hero-picture{z-index:0;display:block}.hero-image{z-index:0;object-fit:cover;object-position:center top;filter:saturate(1.02) contrast(1.03)}.hero-shade{z-index:2;inset:0 0 auto;height:82%;background:linear-gradient(90deg,#05232bbd,#05232b57 28%,#05232b24,#05232b57 72%,#05232bbd);-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 68%,rgba(0,0,0,.74) 80%,transparent 100%);mask-image:linear-gradient(180deg,#000 0%,#000 68%,rgba(0,0,0,.74) 80%,transparent 100%)}.hero-content{position:relative;z-index:3;display:flex;width:min(900px,86vw);flex-direction:column;align-items:center;margin-inline:auto;padding:clamp(104px,7vw,124px) 0 clamp(76px,5vw,96px);text-align:center}.hero-content>*{opacity:1;transform:none}@media(prefers-reduced-motion:no-preference){.hero-content>*{animation:hero-piece-enter .76s var(--ease-out-expo) backwards;animation-delay:calc(.1s + (var(--hero-piece, 0) * 85ms))}}.hero-content>:nth-child(1){--hero-piece: 0}.hero-content>:nth-child(2){--hero-piece: 1}.hero-content>:nth-child(3){--hero-piece: 2}.hero-content>:nth-child(4){--hero-piece: 3}.hero-content>:nth-child(5){--hero-piece: 4}.hero-place{margin:0 0 20px;color:var(--sunstone);font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;text-shadow:0 1px 10px rgba(5,35,43,.5)}.hero-place:before{display:none}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--display);font-weight:400;letter-spacing:0;text-wrap:balance}h1{max-width:9ch;margin-bottom:28px;font-size:clamp(4.25rem,8vw,6rem);line-height:.88}.hero-content h1{width:100%;max-width:none;margin-bottom:0;white-space:nowrap}.hero-content .hero-divider{width:min(360px,100%);margin:28px 0 24px}h2{margin-bottom:28px;font-size:clamp(3rem,5vw,4.7rem);line-height:.96}h3{margin-bottom:16px;font-size:clamp(2rem,3vw,3rem);line-height:1}p{color:var(--ink-soft);font-size:clamp(.98rem,1vw,1.08rem);line-height:1.75;text-wrap:pretty}sup{font-size:.52em;line-height:0}.hero-copy{max-width:52rem;margin-bottom:34px;color:#f7f9f7eb;font-size:clamp(1rem,1.35vw,1.18rem);font-weight:500;line-height:1.7}.hero-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.button{position:relative;overflow:hidden;isolation:isolate;--button-fill: var(--ink);--button-hover-text: var(--salt);display:inline-flex;min-height:50px;align-items:center;justify-content:center;padding:14px 24px;border:1px solid transparent;border-radius:2px;font-size:.82rem;font-weight:700;line-height:1;background:transparent;cursor:pointer;transition:transform .22s var(--ease-out-expo),color .36s var(--ease-out-expo),background-color .36s var(--ease-out-expo),border-color .36s var(--ease-out-expo),box-shadow .36s var(--ease-out-expo)}.button:before{content:"";position:absolute;inset:-1px;z-index:-1;pointer-events:none;background:var(--button-fill);transform:translateY(105%);transform-origin:bottom;transition:transform .52s var(--ease-out-expo);will-change:transform}.button:hover:not(:disabled),.button:focus-visible:not(:disabled){color:var(--button-hover-text);border-color:var(--button-fill);transform:translateY(-2px);box-shadow:0 8px 18px #05232b24}.button:hover:not(:disabled):before,.button:focus-visible:not(:disabled):before{transform:none}.button:active:not(:disabled){transform:translateY(0) scale(.975)}.button-primary{--button-fill: var(--ink);--button-hover-text: var(--salt);color:var(--ink);border-color:var(--sunstone);background:var(--sunstone)}.button-primary:hover:not(:disabled){background:var(--sunstone)}.hero .button-primary:hover:not(:disabled){color:var(--salt);background:var(--sunstone)}.button-light{--button-fill: var(--salt);--button-hover-text: var(--ink);color:var(--salt);border-color:#f7f9f7a8;background:#0b35402e}.button-light:hover:not(:disabled){color:var(--ink);border-color:var(--salt)}.hero-scroll{position:absolute;z-index:3;right:clamp(24px,5vw,84px);bottom:52px;z-index:2;display:grid;justify-items:center;gap:10px;font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--sunstone)}.hero-scroll i{display:block;width:1px;height:48px;background:currentColor;transform-origin:top;animation:scroll-line 1.8s var(--ease-out) infinite}.summary-band{position:relative;z-index:3;padding:clamp(44px,5vw,70px) 0;color:var(--ink);background:#fff;border-top:1px solid var(--sunstone-line);border-bottom:1px solid var(--sunstone-line)}.summary-inner{width:var(--container);margin-inline:auto;display:grid;grid-template-columns:minmax(260px,.75fr) minmax(560px,1.25fr);gap:clamp(46px,8vw,130px);align-items:center}.summary-inner>p{max-width:19ch;margin:0;color:var(--ink);font-family:var(--display);font-size:clamp(1.8rem,2.8vw,3rem);line-height:1.12}.summary-inner>p:after{content:"";display:block;width:72px;height:2px;margin-top:24px;background:var(--sunstone)}.summary-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0}.summary-facts div{position:relative;min-height:112px;padding:22px 24px;border:1px solid var(--line);border-radius:4px;background:var(--salt)}.summary-facts div:before{content:"";position:absolute;top:-1px;left:24px;width:38px;height:2px;background:var(--sunstone)}.summary-facts dt{margin-bottom:10px;color:var(--ink-soft);font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.summary-facts dd{margin:0;color:var(--ink);font-family:var(--display);font-size:clamp(1.7rem,2.5vw,2.6rem);line-height:1}.studio-section{width:var(--wide);margin-inline:auto;display:grid;grid-template-columns:repeat(16,minmax(0,1fr));grid-auto-rows:clamp(42px,2.9vw,58px);gap:16px;padding:clamp(88px,9vw,144px) 0}.studio-copy{grid-column:1 / 7;grid-row:1 / 17;display:flex;min-width:0;flex-direction:column;justify-content:center;align-items:center;padding:clamp(36px,4vw,64px);color:var(--salt);border:1px solid var(--sunstone-line);border-radius:4px;background:var(--ink);text-align:center}.place-line{display:flex;align-items:center;gap:14px;margin-bottom:22px;color:var(--lagoon);font-size:.9rem;font-weight:700}.place-line:before{content:"";width:38px;height:2px;flex:0 0 auto;background:var(--sunstone)}.studio-copy h2{width:100%;max-width:none;margin-bottom:0;color:var(--salt);text-align:center;line-height:1.02}.studio-copy>p:not(.place-line){max-width:52ch;color:#f7f9f7c7}.studio-copy .place-line{display:block;color:var(--sunstone);font-size:.78rem;letter-spacing:.04em;text-transform:uppercase}.studio-copy .place-line:before{display:none}.studio-copy .studio-card-divider{width:100%;margin:30px 0 24px}.studio-copy .studio-lead{max-width:24ch;margin-bottom:18px;color:var(--salt);font-family:var(--display);font-size:clamp(1.35rem,1.8vw,1.8rem);line-height:1.3}.studio-facts{display:grid;width:100%;grid-template-columns:repeat(2,minmax(0,1fr));margin:28px 0 20px;padding:0;border-top:1px solid var(--light-line);border-bottom:1px solid var(--light-line)}.studio-facts div{padding:18px 0}.studio-facts div:nth-child(odd){padding-right:20px;border-right:1px solid var(--light-line)}.studio-facts div:nth-child(2n){padding-left:20px}.studio-facts div:nth-child(-n+2){border-bottom:1px solid var(--light-line)}.studio-facts dt{margin-bottom:8px;color:var(--sea-glass);font-size:.66rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.studio-facts dd{margin:0;color:var(--salt);font-family:var(--display);font-size:clamp(1.45rem,2vw,2rem);line-height:1}.text-link{position:relative;display:inline-flex;min-height:44px;align-items:center;margin-top:18px;padding-bottom:4px;color:var(--ink);font-size:.82rem;font-weight:700;overflow:visible;transition:transform .22s var(--ease-out-expo)}.studio-copy .text-link{width:fit-content;margin-top:18px;color:var(--salt)}.text-link:after{content:"";position:absolute;right:0;bottom:7px;left:0;height:1px;background:var(--sunstone);transform-origin:left;transition:opacity .22s var(--ease-out-expo),transform .22s var(--ease-out-expo)}.text-link:hover,.text-link:focus-visible{transform:translateY(-1px)}.text-link:hover:after,.text-link:focus-visible:after{opacity:.72;transform:translateY(3px)}.studio-media{display:grid;min-width:0;min-height:0;grid-column:7 / 17;grid-row:1 / 17;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto;align-content:start;gap:16px}.studio-media figure,.interior-item{position:relative;margin:0;overflow:hidden;border-radius:3px;background:var(--shell)}.studio-media figure{min-width:0;min-height:0}.studio-media figure img{position:absolute;inset:0}.studio-media img,.interior-item img,.booking-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease-out-expo),filter .7s var(--ease-out-expo)}.studio-media figure:hover img,.interior-item:not(.interior-gallery):hover img,.interior-gallery:hover .gallery-slide.is-active{transform:scale(1.025);filter:saturate(1.04)}.studio-media-main{grid-column:1 / -1;grid-row:1;aspect-ratio:2000 / 644}.studio-media-main img{object-position:50% 54%}.studio-media-coast{grid-column:1 / -1;grid-row:2;aspect-ratio:16 / 9}.studio-media-coast img{object-position:center}@media(min-width:1081px){.site-header.is-scrolled{min-height:80px;padding-block:12px}.studio-section{grid-template-rows:auto;grid-auto-rows:auto;align-items:stretch}.studio-copy,.studio-media{grid-row:1}.studio-copy{height:100%}}@media(max-width:1080px){.site-header{min-height:74px;padding:12px 16px}.brand{width:108px;font-size:1.6rem}.nav-toggle{position:relative;z-index:calc(var(--z-overlay) + 1);display:block;color:currentColor}.nav-toggle:hover,.nav-toggle:focus-visible{background:#f7f9f71f}.nav-toggle.is-open span:first-child{transform:translateY(3.5px) rotate(45deg)}.nav-toggle.is-open span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.primary-nav{position:fixed;inset:0;z-index:var(--z-overlay);width:100%;height:100vh;height:100dvh;max-height:100dvh;flex-direction:column;justify-content:flex-start;gap:clamp(6px,1.4vh,14px);overflow-y:auto;overscroll-behavior-y:contain;padding:clamp(96px,14svh,140px) max(24px,env(safe-area-inset-right)) max(32px,calc(20px + env(safe-area-inset-bottom))) max(24px,env(safe-area-inset-left));color:var(--ink);background:var(--salt);font-family:var(--display);font-size:clamp(1.55rem,4vh,2rem);font-weight:400;transform:translate(100%);transition:transform .36s var(--ease-out-expo)}.primary-nav.is-open{transform:translate(0)}.primary-nav a{opacity:0;transform:translateY(10px);transition:opacity .28s var(--ease-out-expo),transform .28s var(--ease-out-expo),color .22s var(--ease-out-expo),background-color .22s var(--ease-out-expo)}.primary-nav.is-open a{opacity:1;transform:translateY(0);transition-delay:calc(var(--nav-index, 0) * 35ms)}.primary-nav .nav-cta{margin-top:12px;font-family:var(--body);font-size:.82rem}body.nav-open{overflow:hidden}body.nav-open .site-header{color:var(--ink);transform:none}body.nav-open .brand{position:relative;z-index:calc(var(--z-overlay) + 1)}body.nav-open .brand-wave{filter:brightness(0) saturate(100%) invert(19%) sepia(31%) saturate(1088%) hue-rotate(143deg) brightness(91%)}}.interior-section{padding:clamp(88px,9vw,144px) 0;background:var(--shell)}.interior-grid{width:var(--wide);margin-inline:auto}.interior-grid{display:grid;grid-template-columns:repeat(16,minmax(0,1fr));grid-auto-rows:clamp(42px,2.9vw,58px);gap:16px}.interior-intro-card{grid-column:1 / 9;grid-row:1 / 9;display:flex;min-width:0;flex-direction:column;justify-content:center;align-items:center;padding:clamp(32px,3.5vw,58px);color:var(--salt);border:1px solid var(--sunstone-line);border-radius:4px;background:var(--ink);text-align:center}.interior-intro-card>p:first-child{margin-bottom:22px;color:var(--sunstone);font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.interior-intro-card h2{width:100%;max-width:none;margin-bottom:0;color:var(--salt);font-size:clamp(2.6rem,4vw,4.25rem);line-height:1.02;text-align:center}.interior-card-divider{width:100%;margin:30px 0 24px}.interior-intro-card>p:last-child{max-width:39ch;margin-bottom:0;color:#f7f9f7c7;font-size:.88rem;line-height:1.7}.interior-lounge{grid-column:9 / 13;grid-row:1 / 9}.interior-sleep{grid-column:13 / 17;grid-row:1 / 9}.interior-bath{grid-column:1 / 5;grid-row:9 / 17}.interior-kitchen{grid-column:5 / 9;grid-row:9 / 17}.interior-dining{grid-column:9 / 13;grid-row:9 / 17}.interior-vanity{grid-column:13 / 17;grid-row:9 / 17}.interior-gallery .gallery-slide{position:absolute;inset:0;opacity:0;pointer-events:none;transform:scale(1.012);transition:opacity .42s ease,transform .7s var(--ease-out-expo),filter .7s var(--ease-out-expo)}.interior-gallery .gallery-slide.is-active{z-index:1;opacity:1;pointer-events:auto;transform:scale(1)}.gallery-controls{position:absolute;inset:50% 10px auto;z-index:5;display:flex;justify-content:space-between;pointer-events:none;transform:translateY(-50%)}.gallery-arrow{display:grid;width:36px;height:36px;padding:0 0 3px;place-items:center;color:var(--salt);font-family:Arial,sans-serif;font-size:1.6rem;font-weight:300;line-height:1;border:1px solid rgba(247,249,247,.2);border-radius:50%;background:#eef4f242;opacity:.9;pointer-events:auto;cursor:pointer;transition:color .22s ease,border-color .22s ease,background-color .22s ease,opacity .22s ease,transform .22s var(--ease-out-expo)}.gallery-arrow:hover,.gallery-arrow:focus-visible{color:var(--ink);border-color:#f7f9f7b8;background:#f7f9f7db;opacity:1;transform:scale(1.06)}.gallery-arrow:active{transform:scale(.96)}.studio-media figure:after,.interior-item:after{content:"";position:absolute;inset:36% 0 0;z-index:2;background:linear-gradient(180deg,transparent,rgba(6,38,46,.84));pointer-events:none}.studio-media figure,.interior-item{border:1px solid rgba(215,180,111,.46)}.studio-media figure figcaption,.interior-item figcaption{position:absolute;right:0;bottom:0;left:0;z-index:4;display:grid;gap:10px;padding:clamp(20px,2.4vw,34px);color:var(--salt);transform:translateY(0);transition:transform .36s var(--ease-out-expo);pointer-events:none}.image-open-button{position:absolute;inset:0;z-index:3;width:100%;height:100%;padding:0;border:0;border-radius:inherit;background:transparent;cursor:pointer}.image-open-button:focus-visible{outline:2px solid var(--sunstone);outline-offset:-6px}.image-lightbox{width:min(94vw,1480px);max-width:none;max-height:94vh;padding:0;color:var(--salt);border:0;border-radius:4px;background:transparent;overflow:visible}.image-lightbox::backdrop{background:#02080aeb}.image-lightbox-frame{position:relative;display:grid;min-height:min(84vh,900px);place-items:center;padding:54px 68px 44px}.image-lightbox figure{position:relative;display:grid;width:fit-content;max-width:100%;max-height:calc(94vh - 100px);margin:0;place-items:center}.image-lightbox img{display:block;width:auto;max-width:100%;height:auto;max-height:calc(94vh - 160px);object-fit:contain}.lightbox-close,.lightbox-arrow{position:absolute;z-index:2;display:grid;width:48px;height:48px;padding:0;place-items:center;color:var(--salt);border:1px solid rgba(247,249,247,.34);border-radius:50%;background:#02080a9e;cursor:pointer;transition:color .22s ease,border-color .22s ease,background-color .22s ease,transform .22s var(--ease-out-expo)}.lightbox-close:hover,.lightbox-close:focus-visible,.lightbox-arrow:hover,.lightbox-arrow:focus-visible{color:var(--ink);border-color:var(--sunstone);background:var(--sunstone);transform:scale(1.05)}.lightbox-close{top:14px;right:14px;padding-bottom:3px;font-size:1.65rem;line-height:1}.lightbox-arrow{top:50%;padding-bottom:4px;font-family:Arial,sans-serif;font-size:2rem;line-height:1;transform:translateY(-50%)}.lightbox-arrow:hover,.lightbox-arrow:focus-visible{transform:translateY(-50%) scale(1.05)}.lightbox-arrow-previous{left:14px}.lightbox-arrow-next{right:14px}.lightbox-arrow[hidden]{display:none}.lightbox-status{position:absolute;top:18px;left:18px;z-index:1;padding:5px 8px;color:var(--sunstone);font-size:.72rem;font-weight:700;background:#02080a85}body:has(.image-lightbox[open]){overflow:hidden}.studio-media figure:hover figcaption,.interior-item:hover figcaption{transform:translateY(-4px)}.studio-media figure figcaption strong,.interior-item figcaption strong{display:grid;gap:12px;font-family:var(--display);font-size:clamp(1.5rem,2.2vw,2.4rem);font-weight:400;line-height:1}.studio-media figure figcaption strong:after,.interior-item figcaption strong:after{content:"";width:min(320px,100%);height:1px;background:var(--sunstone);opacity:.78}.studio-media figure figcaption span,.interior-item figcaption span{max-width:36ch;color:#f7f9f7d6;font-size:.78rem;line-height:1.5}.amenities-section{position:relative;display:grid;grid-template-columns:minmax(340px,.72fr) minmax(640px,1.28fr);gap:clamp(56px,6vw,104px);overflow:hidden;padding:clamp(88px,9vw,144px) max(20px,calc((100vw - 1600px)/2));color:var(--salt);background:var(--ink)}.amenities-decoration{position:absolute;bottom:-12%;left:clamp(-110px,-5vw,-48px);width:auto;height:108%;max-width:30vw;object-fit:contain;object-position:left bottom;opacity:.18;pointer-events:none;transform-origin:left bottom;animation:watercolor-drift 16s ease-in-out infinite alternate}.amenities-intro{position:relative;z-index:1;max-width:520px;align-self:center}.amenities-intro>p{margin-bottom:24px;color:var(--sunstone);font-size:.9rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.amenities-intro h2{margin-bottom:0;max-width:9ch;line-height:1.02}.amenities-divider{display:flex;width:min(330px,100%);align-items:center;gap:14px;margin:38px 0 28px;color:var(--sunstone)}.amenities-divider span{height:1px;flex:1;background:currentColor;opacity:.7}.amenities-divider svg{width:30px;height:12px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round}.amenities-intro .amenities-summary{max-width:39ch;margin-bottom:0;color:#f7f9f7c7;font-size:.98rem;font-weight:400;line-height:1.75;letter-spacing:0;text-transform:none}.amenities-list{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-content:start}.amenities-list div{position:relative;display:grid;grid-template-columns:58px minmax(0,1fr);column-gap:24px;row-gap:8px;min-height:142px;align-content:center;padding:24px clamp(22px,2.2vw,34px);border:1px solid rgba(185,223,222,.24);border-radius:4px;background:#b9dfde09;transition:border-color .26s var(--ease-out-expo),background-color .26s var(--ease-out-expo),transform .26s var(--ease-out-expo)}.amenities-list div:nth-child(2n){padding-inline:clamp(22px,2.2vw,34px)}.amenities-list div:after{content:"";position:absolute;top:24px;bottom:24px;left:calc(clamp(22px,2.2vw,34px) + 70px);width:1px;background:#d7b46f94}.amenities-list div:hover{border-color:#d7b46f9e;background:#b9dfde13;transform:translateY(-2px)}.amenity-icon{grid-row:1 / span 2;width:54px;height:54px;padding:14px;align-self:center;color:var(--sunstone);background:#b9dfde0f;border:1px solid rgba(185,223,222,.24);border-radius:50%;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round;transition:color .26s var(--ease-out-expo),background-color .26s var(--ease-out-expo),transform .26s var(--ease-out-expo)}.amenities-list div:hover .amenity-icon{color:var(--sunstone);background:#0e717b57;transform:translateY(-1px)}.amenities-list strong{color:var(--salt);font-family:var(--display);font-size:clamp(1.35rem,1.8vw,1.9rem);font-weight:400}.amenities-list span{max-width:34ch;color:#f7f9f7b3;font-size:.82rem;line-height:1.6}.coast-section{padding:clamp(72px,7vw,112px) 0;background:var(--salt)}.coast-inner{width:var(--wide);margin-inline:auto;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(400px,.88fr);grid-template-areas:"map copy";gap:16px;min-height:620px}.coast-copy{grid-area:copy;display:flex;flex-direction:column;justify-content:center;padding:clamp(38px,3.8vw,58px);color:var(--salt);border:1px solid var(--sunstone-line);border-radius:4px;background:var(--ink)}.coast-copy .place-line{display:block;margin-bottom:20px;color:var(--sunstone);font-size:.78rem;letter-spacing:.04em;text-transform:uppercase}.coast-copy .place-line:before{display:none}.coast-copy h2{width:100%;max-width:none;margin-bottom:0;color:var(--salt);font-size:clamp(3rem,4.2vw,4.15rem);line-height:1;text-align:center}.interior-gallery figcaption strong:after{display:none}.gallery-progress{display:grid;grid-template-columns:repeat(var(--gallery-slide-count),minmax(0,1fr));gap:4px;width:min(320px,100%);height:2px}.gallery-progress span{display:block;height:100%;background:#f7f9f761;transition:background-color .28s ease}.gallery-progress span.is-active{background:var(--sunstone)}.coast-card-divider{width:100%;margin:26px 0 22px}.coast-copy>p:not(.place-line){width:100%;max-width:none;margin-bottom:0;color:#f7f9f7c7;font-size:.9rem;line-height:1.7}.distance-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:28px 0 32px;padding:0;border-block:1px solid var(--light-line);list-style:none}.distance-list li{display:grid;min-height:78px;align-content:center;gap:6px;padding:12px 16px;color:var(--salt);border-right:1px solid var(--light-line);font-size:.8rem;font-weight:700}.distance-list li:nth-child(2n){border-right:0}.distance-list li:nth-child(-n+4){border-bottom:1px solid var(--light-line)}.distance-list li span{display:inline-flex;align-items:center;gap:10px}.distance-list li span:before{content:"";width:6px;height:6px;flex:0 0 auto;border:1px solid var(--sunstone-deep);transform:rotate(45deg)}.distance-list strong{color:var(--sunstone);font-family:var(--display);font-size:1.6rem;font-weight:400}blockquote{margin:0;padding-top:24px;border-top:1px solid var(--light-line)}blockquote>p{max-width:16ch;margin-bottom:18px;color:var(--salt);font-family:var(--display);font-size:clamp(1.7rem,2.2vw,2.25rem);line-height:1.08}blockquote footer{display:flex;align-items:center;gap:14px}blockquote footer:before{content:"";width:42px;height:2px;background:var(--sunstone-deep)}blockquote strong{color:var(--sunstone);font-family:var(--display);font-size:2.5rem;font-weight:400}blockquote span{color:#f7f9f7ad;font-size:.76rem;font-weight:700}.coast-map{position:relative;grid-area:map;min-height:620px;overflow:hidden;background:var(--sky);border:1px solid var(--sunstone-line);border-radius:4px}.coast-map iframe{display:block;width:100%;height:100%;min-height:620px;border:0;filter:saturate(.72) contrast(.96);transition:filter .42s var(--ease-out-expo),transform .7s var(--ease-out-expo)}.coast-map:hover iframe{filter:saturate(.86) contrast(1);transform:scale(1.01)}.coast-map>a{position:absolute;right:22px;bottom:22px;display:inline-flex;min-height:46px;align-items:center;padding:0 18px;color:var(--ink);background:var(--sunstone);font-size:.74rem;font-weight:700;border:1px solid var(--sunstone-deep);transition:background-color .22s var(--ease-out),transform .22s var(--ease-out)}.coast-map>a:hover{background:var(--sunstone-deep);transform:translateY(-2px)}.faq-section{position:relative;overflow:hidden;padding:clamp(84px,8vw,132px) 0;color:var(--salt);background:var(--ink);border-top:1px solid var(--sunstone-line)}.faq-decoration{position:absolute;bottom:-12%;left:clamp(-110px,-5vw,-48px);width:auto;height:108%;max-width:30vw;object-fit:contain;object-position:left bottom;opacity:.18;pointer-events:none;transform-origin:left bottom;animation:watercolor-drift 16s ease-in-out infinite alternate}.faq-inner{position:relative;z-index:1;display:grid;grid-template-columns:minmax(280px,.72fr) minmax(520px,1.28fr);gap:clamp(64px,8vw,140px);width:var(--container);margin-inline:auto}.faq-intro{display:flex;align-self:stretch;flex-direction:column;padding-top:10px}.faq-intro>p:first-child{margin-bottom:24px;color:var(--sunstone);font-size:.9rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.faq-intro h2{max-width:11.5ch;margin-bottom:0;font-size:clamp(3rem,4.8vw,4.6rem);line-height:.96}.faq-divider{width:100%;margin:28px 0 24px}.faq-summary{max-width:36ch;margin-bottom:0;color:#f7f9f7b8;line-height:1.75}.faq-contact{width:min(100%,360px);margin-top:auto;padding-top:28px}.faq-contact>p{margin-bottom:16px;color:var(--sunstone);font-size:.9rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.faq-contact-links{display:flex;flex-wrap:wrap;gap:10px 24px}.faq-contact-links a{display:inline-flex;min-height:36px;align-items:center;gap:8px;color:#f7f9f7d6;font-size:.78rem;font-weight:650;transition:color .22s var(--ease-out),transform .22s var(--ease-out)}.faq-contact-links a:hover,.faq-contact-links a:focus-visible{color:var(--sunstone);transform:translateY(-2px)}.faq-contact-links svg{width:17px;height:17px;flex:0 0 auto;fill:none;color:var(--sunstone);stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}.faq-list{display:grid;gap:12px}.faq-list details{overflow:hidden;background:#f7f9f706;border:1px solid var(--light-line);border-radius:4px;transition:border-color .26s var(--ease-out-expo),background-color .26s var(--ease-out-expo),transform .26s var(--ease-out-expo)}.faq-list details:hover,.faq-list details[open]{background:#f7f9f70e;border-color:#d7b46f85}.faq-list summary{position:relative;display:grid;min-height:82px;grid-template-columns:minmax(0,1fr) 44px;align-items:center;gap:24px;padding:18px 20px 18px 24px;color:var(--salt);font-family:var(--display);font-size:clamp(1.35rem,2vw,1.85rem);line-height:1.1;list-style:none;cursor:pointer}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";display:grid;width:40px;height:40px;place-items:center;justify-self:end;color:var(--sunstone);border:1px solid rgba(215,180,111,.48);border-radius:50%;font-family:var(--body);font-size:1.25rem;font-weight:400;transition:color .26s var(--ease-out-expo),background-color .26s var(--ease-out-expo),transform .36s var(--ease-out-expo)}.faq-list summary:hover:after,.faq-list summary:focus-visible:after{color:var(--ink);background:var(--sunstone)}.faq-list details[open] summary:after{color:var(--ink);background:var(--sunstone);transform:rotate(45deg)}.faq-answer{max-width:68ch;padding:0 68px 24px 24px;will-change:opacity,transform}.faq-answer p{margin:0;color:#f7f9f7b3;line-height:1.75}.booking-section{display:grid;grid-template-columns:minmax(360px,.72fr) minmax(700px,1.28fr);min-height:900px;background:var(--ink);border-top:1px solid var(--sunstone-line)}.booking-image{position:relative;min-height:900px;overflow:hidden}.booking-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#06262e05 35%,#06262ec7)}.booking-image>div{position:absolute;right:clamp(28px,5vw,80px);bottom:clamp(44px,7vw,100px);left:clamp(28px,5vw,80px);z-index:2;color:var(--salt)}.booking-image>div p{margin-bottom:18px;color:var(--sunstone);font-size:.82rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.booking-image>div>span{display:block;max-width:38ch;margin-top:24px;color:#f7f9f7d1;font-size:.88rem;line-height:1.65}.booking-image h2{max-width:10ch;margin-bottom:0}.booking-image h2:after{content:"";display:block;width:72px;height:2px;margin-top:28px;background:var(--sunstone)}.booking-planner{display:grid;align-content:start;gap:28px;padding:clamp(44px,4.5vw,72px);background:var(--shell)}.booking-planner-heading{display:flex;align-items:end;justify-content:space-between;gap:32px;padding-bottom:26px;border-bottom:1px solid var(--sunstone-line)}.booking-planner-heading>div>p{margin:0 0 6px;color:var(--sunstone-deep);font-size:.76rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.booking-planner-heading h3{margin:0;font-size:clamp(2.45rem,3.7vw,3.9rem);line-height:1}.calendar-status{display:inline-flex;min-height:36px;align-items:center;gap:9px;color:var(--ink-soft);font-size:.72rem;font-weight:700}.calendar-status i{width:8px;height:8px;flex:0 0 auto;border-radius:50%;background:var(--sunstone-deep)}.calendar-status.is-live i{background:var(--lagoon)}.calendar-status.is-error i{background:var(--error)}.booking-terms{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:-4px 0 0;padding:0;border-block:1px solid var(--sunstone-line);list-style:none}.booking-terms li{display:flex;min-height:76px;flex-direction:column;align-items:flex-start;justify-content:center;gap:8px;padding:14px 18px;border-right:1px solid var(--sunstone-line);transition:background-color .22s var(--ease-out-expo)}.booking-terms li:last-child{border-right:0}.booking-terms li:hover{background:#d7b46f14}.booking-terms span{display:inline-flex;align-items:center;gap:9px;color:var(--lagoon);font-size:.7rem;font-weight:700}.booking-terms span:before{content:"";width:6px;height:6px;flex:0 0 auto;border:1px solid var(--sunstone-deep);transform:rotate(45deg)}.booking-terms strong{color:var(--ink);font-family:var(--display);font-size:clamp(1.05rem,1.35vw,1.25rem);font-weight:400}.availability-calendar{padding:clamp(22px,3vw,34px);background:#fff;border:1px solid var(--sunstone-line);border-radius:4px}.calendar-toolbar{display:flex;align-items:start;justify-content:space-between;gap:24px;margin-bottom:24px}.calendar-toolbar h4{margin:0 0 6px;font-family:var(--display);font-size:clamp(1.55rem,2.2vw,2.1rem);font-weight:400;line-height:1.1}.calendar-toolbar p{margin:0;color:var(--ink-soft);font-size:.78rem}.calendar-navigation{display:flex;flex:0 0 auto;gap:8px}.calendar-navigation button{display:inline-grid;width:44px;height:44px;place-items:center;color:var(--ink);background:transparent;border:1px solid var(--sunstone-line);border-radius:50%;cursor:pointer;transition:color .18s var(--ease-out-expo),background-color .18s var(--ease-out-expo),border-color .18s var(--ease-out-expo),transform .18s var(--ease-out-expo)}.calendar-navigation button:hover:not(:disabled){color:var(--salt);background:var(--ink);border-color:var(--ink);transform:translateY(-1px)}.calendar-navigation button:disabled{opacity:.34;cursor:not-allowed}.calendar-months{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,3vw,46px)}.calendar-month{min-width:0}.calendar-months.is-navigating .calendar-month{animation:calendar-month-enter .36s var(--ease-out-expo) both}.calendar-month h5{margin:0 0 16px;color:var(--ink);font-family:var(--body);font-size:.82rem;font-weight:800}.calendar-weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(34px,1fr));gap:3px}.calendar-weekdays{margin-bottom:8px}.calendar-weekdays span{display:grid;min-height:26px;place-items:center;color:var(--ink-soft);font-size:.66rem;font-weight:700}.calendar-day,.calendar-day-spacer{aspect-ratio:1;min-width:34px}.calendar-day{position:relative;display:grid;align-content:center;justify-items:center;gap:1px;color:var(--ink);background:transparent;border-radius:50%;font-size:.76rem;font-weight:700;cursor:pointer;transition:color .16s var(--ease-out-expo),background-color .16s var(--ease-out-expo),transform .16s var(--ease-out-expo),box-shadow .16s var(--ease-out-expo)}.calendar-day-number{line-height:1}.calendar-day-price{max-width:100%;overflow:hidden;font-size:clamp(.42rem,.52vw,.54rem);font-weight:700;line-height:1;text-overflow:ellipsis;white-space:nowrap}.calendar-day:hover:not(:disabled):not(.is-selected){background:var(--sky);transform:scale(1.04)}.calendar-day.is-today:after{content:"";position:absolute;bottom:5px;width:3px;height:3px;border-radius:50%;background:var(--sunstone-deep)}.calendar-day.is-in-range{color:var(--salt);border-radius:50%;background:var(--ink)}.calendar-day.is-selected{color:var(--salt);background:var(--ink);box-shadow:0 0 0 3px #d7b46f42}.calendar-day.is-checkout-only{color:#315862b8;background:#f3f7f5;box-shadow:inset 0 0 0 1px #31586233}.calendar-day.is-checkout-boundary{color:#315862b8;background:#f3f7f5;box-shadow:inset 0 0 0 1px #31586233;cursor:help}.calendar-day:active:not(:disabled){transform:scale(.94)}.calendar-day.is-unavailable,.calendar-day.is-arrival-unavailable,.calendar-day.is-past{color:#1c3f488a;background:#cddbd7;text-decoration:line-through;cursor:not-allowed}.calendar-legend{display:flex;flex-wrap:wrap;gap:14px 24px;margin-top:24px;padding-top:18px;border-top:1px solid var(--line);color:var(--ink-soft);font-size:.68rem;font-weight:700}.calendar-legend span{display:inline-flex;align-items:center;gap:8px}.calendar-legend i{width:11px;height:11px;border-radius:50%}.legend-available{border:1px solid var(--sunstone-deep);background:#fff}.legend-selected{background:var(--ink)}.legend-checkout{border:1px solid rgba(49,88,98,.2);background:#f3f7f5}.legend-unavailable{background:#cddbd7;border:1px solid var(--line)}.stay-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-block:1px solid var(--sunstone-line)}.stay-summary>div{display:grid;min-width:0;gap:4px;padding:18px 20px;border-right:1px solid var(--sunstone-line);transition:background-color .22s var(--ease-out-expo)}.stay-summary>div:last-child{border-right:0}.stay-summary>div:hover{background:#d7b46f14}.stay-summary.is-confirmed>div{animation:stay-summary-confirm .46s var(--ease-out-expo) backwards}.stay-summary.is-confirmed>div:nth-child(2){animation-delay:45ms}.stay-summary.is-confirmed>div:nth-child(3){animation-delay:90ms}.stay-summary.is-confirmed>div:nth-child(4){animation-delay:135ms}.stay-summary span{color:var(--lagoon);font-size:.66rem;font-weight:700}.stay-summary strong{overflow-wrap:anywhere;color:var(--ink);font-family:var(--display);font-size:clamp(1rem,1.5vw,1.3rem);font-weight:400;line-height:1.15}.booking-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px}.honeypot-field{position:absolute;left:-100vw;width:1px;height:1px;overflow:hidden}.form-row{display:grid;align-content:start;gap:9px}.form-row-wide{grid-column:1 / -1}.booking-form-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin:0;padding-bottom:13px;border-bottom:1px solid var(--sunstone-line)}.booking-form-heading strong{color:var(--ink);font-family:var(--display);font-size:1.36rem;font-weight:400}.booking-form-heading span{max-width:42ch;color:var(--ink-soft);font-size:.72rem;font-weight:600;line-height:1.5;text-align:right}label{color:var(--lagoon);font-size:.72rem;font-weight:700}input,select,textarea{width:100%;min-height:54px;padding:0 15px;color:var(--ink);border:1px solid rgba(215,180,111,.72);border-radius:2px;background:#fff;transition:border-color .18s var(--ease-out-expo),box-shadow .18s var(--ease-out-expo),background-color .18s var(--ease-out-expo)}textarea{min-height:94px;padding-block:14px;resize:vertical}input:hover,select:hover,textarea:hover{border-color:var(--sunstone-deep)}input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:var(--sunstone-deep);outline-offset:2px;box-shadow:0 0 0 4px #d7b46f2e}input::placeholder,textarea::placeholder{color:var(--ink-soft);opacity:1}.booking-form input:not([type=hidden]):not([type=checkbox]):user-valid,.booking-form select:user-valid{padding-right:42px;border-color:#0e717bb8;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%230e717b' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4.5 10.5 3.2 3.2 7.8-8'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:16px}.booking-form #phone-country-code:user-valid{padding-right:50px;background-position:right 30px center}.booking-form input:not([type=hidden]):not([type=checkbox]):user-invalid,.booking-form select:user-invalid{border-color:var(--error);animation:field-attention .18s var(--ease-out-expo)}.form-row label span{color:var(--ink-soft);font-weight:600}.phone-field{display:grid;grid-template-columns:minmax(160px,.9fr) minmax(150px,1fr);gap:10px}.phone-field select,.phone-field input{min-width:0}.phone-field input[type=hidden]{display:none}.form-field-hint{color:var(--ink-soft);font-size:.68rem;font-weight:600;line-height:1.45}.consent-row{display:grid;grid-template-columns:20px minmax(0,1fr);gap:12px;align-items:start;color:var(--ink-soft);cursor:pointer}.consent-row input{width:18px;min-height:18px;margin:1px 0 0;padding:0;accent-color:var(--ink)}.consent-row span{font-size:.72rem;font-weight:600;line-height:1.5}.booking-form .button{width:100%;cursor:pointer}.submit-status-icon{position:absolute;right:20px;width:17px;height:17px;opacity:0;pointer-events:none;transform:scale(.7);transition:opacity .18s var(--ease-out-expo),transform .22s var(--ease-out-expo)}.booking-form .button.is-loading,.booking-form .button.is-success{opacity:1}.booking-form .button.is-loading .submit-status-icon{border:2px solid currentColor;border-right-color:transparent;border-radius:50%;opacity:1;transform:scale(1);animation:submit-spin .7s linear infinite}.booking-form .button.is-success{color:var(--salt);border-color:var(--lagoon);background:var(--lagoon)}.booking-form .button.is-success .submit-status-icon{opacity:1;transform:scale(1)}.booking-form .button.is-success .submit-status-icon:after{content:"";position:absolute;top:1px;left:5px;width:6px;height:11px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);animation:submit-check .26s var(--ease-out-expo) both}.booking-form .button:disabled:not(.is-loading):not(.is-success){opacity:.62;cursor:wait}.booking-reassurance{display:grid;grid-template-columns:22px minmax(0,1fr);gap:12px;align-items:start;padding:2px 0 2px 14px;border-left:2px solid var(--sunstone)}.booking-reassurance svg,.booking-direct-contact svg{width:18px;height:18px;fill:none;stroke:var(--sunstone-deep);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}.booking-reassurance p{display:grid;gap:3px;margin:0}.booking-reassurance strong{color:var(--ink);font-size:.76rem}.booking-reassurance span{color:var(--ink-soft);font-size:.74rem;line-height:1.55}.booking-direct-contact{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;padding-top:16px;border-top:1px solid var(--sunstone-line);color:var(--ink-soft);font-size:.74rem;font-weight:600}.booking-direct-contact a{display:inline-flex;align-items:center;gap:6px;color:var(--ink);font-size:.76rem;font-weight:800;transition:color .18s var(--ease-out),transform .18s var(--ease-out)}.booking-direct-contact a:hover{color:var(--sunstone-deep);transform:translate(2px)}.booking-direct-contact svg{width:15px;height:15px}.form-note{margin:0;color:var(--ink-soft);font-size:.76rem;line-height:1.55}.form-note.is-sent{color:var(--lagoon);font-weight:700;animation:note-confirm .42s var(--ease-out-expo) both}.form-note.is-error{color:var(--error);font-weight:700;animation:note-attention .28s var(--ease-out-expo) both}.site-footer{display:flex;align-items:center;flex-direction:column;gap:22px;padding:clamp(46px,5vw,68px) clamp(24px,5vw,80px) 34px;color:var(--salt);background:var(--ink);border-top:1px solid var(--sunstone-line);text-align:center}.footer-brand{display:grid;width:clamp(112px,9vw,148px);min-height:0;justify-items:center;color:var(--sunstone)}.site-footer .footer-brand .brand-wave{filter:brightness(0) saturate(100%) invert(75%) sepia(22%) saturate(846%) hue-rotate(4deg) brightness(91%) contrast(89%)}.footer-copyright{margin:0;color:#f7f9f7ad;font-size:.72rem}.footer-social-row{display:flex;align-items:center;justify-content:center;gap:8px}.footer-social-row a{display:grid;width:44px;height:44px;align-items:center;place-items:center;color:var(--sunstone);transition:color .22s var(--ease-out),transform .22s var(--ease-out),opacity .22s var(--ease-out)}.footer-social-row a:hover,.footer-social-row a:focus-visible{color:var(--salt);transform:translateY(-3px)}.footer-social-row svg{width:21px;height:21px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}.footer-nav{display:flex;align-items:center;flex-wrap:wrap;justify-content:center;gap:12px clamp(18px,2.2vw,34px);font-size:.82rem;font-weight:600}.footer-nav a{color:#f7f9f7d6;transition:color .22s var(--ease-out),transform .22s var(--ease-out)}.footer-nav a:hover,.footer-nav a:focus-visible{color:var(--sunstone);transform:translateY(-2px)}body.motion-ready .motion-reveal{opacity:0;transition:opacity .56s var(--ease-out-expo),transform .62s var(--ease-out-expo);transition-delay:calc(var(--reveal-index, 0) * 70ms)}body.motion-ready .motion-reveal-media{transform:translate3d(0,18px,0)}body.motion-ready .motion-reveal-list{transform:translate3d(0,10px,0)}body.motion-ready .motion-reveal.is-visible{opacity:1;transform:translateZ(0)}@keyframes hero-piece-enter{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes watercolor-drift{0%{transform:translate3d(-4px,2px,0) scale(1)}to{transform:translate3d(5px,-3px,0) scale(1.008)}}@keyframes calendar-month-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes stay-summary-confirm{0%{background:#d7b46f00;transform:translateY(4px)}45%{background:#d7b46f29}to{background:#d7b46f00;transform:translateY(0)}}@keyframes field-attention{0%,to{transform:translate(0)}45%{transform:translate(-2px)}75%{transform:translate(2px)}}@keyframes submit-spin{to{transform:rotate(360deg)}}@keyframes submit-check{0%{opacity:0;transform:rotate(45deg) scale(.6)}to{opacity:1;transform:rotate(45deg) scale(1)}}@keyframes note-confirm{0%{opacity:.45;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes note-attention{0%,to{transform:translate(0)}35%{transform:translate(-4px)}70%{transform:translate(4px)}}@keyframes scroll-line{0%,to{transform:scaleY(.35);opacity:.55}50%{transform:scaleY(1);opacity:1}}@media(max-width:1080px){:root{--container: min(100vw - 32px, 1040px);--wide: min(100vw - 32px, 1040px)}.summary-inner{grid-template-columns:1fr;gap:36px}.summary-inner>p{max-width:28ch}.studio-section{grid-template-columns:repeat(8,minmax(0,1fr));grid-auto-rows:clamp(44px,5.2vw,58px);gap:12px}.studio-copy{grid-column:1 / 9;grid-row:1 / 12;padding:clamp(36px,6vw,58px)}.studio-copy h2{max-width:none}.studio-media{grid-column:1 / 9;grid-row:12 / 29;grid-template-columns:minmax(0,1fr);gap:12px}.studio-media-main{grid-column:1 / -1;grid-row:1}.studio-media-coast{grid-column:1 / -1;grid-row:2}.interior-grid{grid-template-columns:repeat(8,minmax(0,1fr));grid-auto-rows:clamp(44px,5.2vw,58px);gap:12px}.interior-intro-card{grid-column:1 / 5;grid-row:1 / 9}.interior-lounge{grid-column:5 / 9;grid-row:1 / 9}.interior-sleep{grid-column:1 / 5;grid-row:9 / 17}.interior-bath{grid-column:5 / 9;grid-row:9 / 17}.interior-kitchen{grid-column:1 / 5;grid-row:17 / 25}.interior-dining{grid-column:5 / 9;grid-row:17 / 25}.interior-vanity{grid-column:3 / 7;grid-row:25 / 33}.amenities-section{grid-template-columns:1fr}.amenities-intro{max-width:760px}.amenities-decoration{height:72%;max-width:42vw;opacity:.14}.faq-decoration{bottom:-12%;left:clamp(-110px,-5vw,-48px);height:72%;max-width:42vw;opacity:.14}.coast-inner{grid-template-columns:1fr;grid-template-areas:"copy" "map";min-height:0}.coast-copy{max-width:none}.coast-map,.coast-map iframe{min-height:460px}.faq-inner{grid-template-columns:minmax(240px,.78fr) minmax(0,1.22fr);gap:clamp(44px,6vw,72px)}.booking-section{grid-template-columns:1fr}.booking-image{min-height:540px}.booking-planner{padding:clamp(46px,6vw,72px)}.booking-terms{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-terms li:nth-child(2){border-right:0}.booking-terms li:nth-child(-n+2){border-bottom:1px solid var(--sunstone-line)}}@media(min-width:761px)and (max-width:1080px){.amenities-section{gap:clamp(48px,6vw,72px);padding:clamp(80px,9vw,112px) clamp(32px,5vw,64px)}.amenities-intro{width:min(100%,920px);max-width:none;justify-self:center;text-align:center}.amenities-intro h2{max-width:none;font-size:clamp(2.8rem,5vw,3.8rem);text-wrap:balance}.amenities-intro .amenities-summary{max-width:64ch;margin-inline:auto}.amenities-divider{width:min(520px,100%);margin:32px auto 26px}.amenities-list{width:min(100%,960px);justify-self:center}.faq-inner{grid-template-columns:1fr;gap:clamp(46px,6vw,72px)}.faq-intro{width:min(100%,920px);justify-self:center;padding-top:0;text-align:center}.faq-intro h2{max-width:none;font-size:clamp(2.8rem,5vw,3.8rem);text-wrap:balance}.faq-summary{max-width:64ch;margin-inline:auto}.faq-contact{margin:32px auto 0}.faq-contact-links{justify-content:center}.faq-divider{width:min(520px,100%);margin:32px auto 26px}.faq-list{display:grid;width:min(100%,960px);grid-template-columns:1fr;align-items:start;justify-self:center}.faq-list summary{min-height:96px;gap:16px;padding:20px;font-size:clamp(1.3rem,2.2vw,1.7rem)}.faq-answer{padding-right:24px}}@media(max-width:760px){:root{--container: min(100vw - 32px, 680px);--wide: min(100vw - 32px, 680px)}html{scroll-padding-top:76px}.image-lightbox{width:calc(100vw - 20px);max-height:calc(100svh - 20px)}.image-lightbox-frame{min-height:calc(100svh - 20px);padding:24px 12px}.image-lightbox figure{max-height:calc(100svh - 48px)}.image-lightbox img{max-height:calc(100svh - 48px)}.faq-section{padding:72px 0}.faq-inner{grid-template-columns:1fr;gap:42px}.faq-intro{text-align:center}.faq-intro h2,.faq-summary{max-width:none}.faq-divider{margin-inline:auto}.faq-list summary{min-height:76px;grid-template-columns:minmax(0,1fr) 40px;gap:14px;font-size:1.35rem}.faq-answer{padding-right:0}.lightbox-arrow{width:42px;height:42px;top:50%;transform:translateY(-50%)}.lightbox-arrow:hover,.lightbox-arrow:focus-visible{transform:translateY(-50%) scale(1.05)}.lightbox-arrow-previous{left:10px}.lightbox-arrow-next{right:10px}.lightbox-status{top:12px;left:12px}.hero-image{object-position:76% top}.hero-shade{height:84%;background:linear-gradient(90deg,#05232bc2,#05232b7a 34%,#05232b6b,#05232b7a 66%,#05232bc2)}.hero-content{display:flex;width:min(calc(100% - 40px),540px);flex-direction:column;align-items:center;margin-inline:auto;padding:104px 0 76px;text-align:center}.hero-place{max-width:min(100%,28ch);font-size:clamp(.62rem,2.15vw,.72rem);line-height:1.45;letter-spacing:.08em;text-wrap:balance}h1{font-size:clamp(3.8rem,18vw,5.4rem);white-space:normal}.hero-content h1{white-space:normal}h2{font-size:clamp(2.8rem,12vw,4rem)}h3{font-size:clamp(2rem,9vw,2.8rem)}.hero-actions{display:grid;width:min(100%,320px);max-width:320px;margin-inline:auto}.hero-content .hero-divider,.hero-copy{margin-inline:auto}.hero-scroll{display:none}.summary-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.summary-facts div{min-height:100px;padding:20px 18px;border:1px solid var(--line)}.studio-section,.interior-section,.amenities-section{padding-block:72px}.studio-section{grid-template-columns:1fr;grid-auto-rows:auto;gap:12px}.studio-copy{grid-column:1;grid-row:auto;min-height:560px;align-items:center;padding:40px 28px;text-align:center}.studio-copy h2,.studio-copy>p:not(.place-line),.studio-copy .studio-lead{max-width:100%}.studio-media{display:contents}.studio-media-main,.studio-media-coast{grid-column:1;grid-row:auto;aspect-ratio:4 / 3}.interior-grid{grid-template-columns:1fr;grid-auto-rows:auto;gap:12px}.interior-intro-card{grid-column:1;grid-row:auto;min-height:480px;align-items:center;padding:40px 28px;text-align:center}.interior-intro-card h2,.interior-intro-card>p:last-child{max-width:100%}.interior-item,.interior-lounge,.interior-sleep,.interior-bath,.interior-kitchen,.interior-dining,.interior-vanity{grid-column:1;grid-row:auto;min-height:340px}.interior-lounge,.interior-bath{min-height:420px}.amenities-section{padding-inline:24px}.amenities-intro{max-width:none;text-align:center}.amenities-intro h2,.amenities-intro .amenities-summary{max-width:100%}.amenities-divider{margin-inline:auto}.amenities-list{grid-template-columns:1fr}.amenities-list div,.amenities-list div:nth-child(2n){grid-template-columns:54px 1px minmax(0,1fr);column-gap:18px;min-height:126px;padding:20px}.amenities-list div:after{top:20px;bottom:20px;left:92px}.amenities-list strong,.amenities-list span{grid-column:3}.amenities-decoration{left:-80px;height:64%;max-width:58vw;opacity:.11}.faq-decoration{bottom:-12%;left:-80px;height:64%;max-width:58vw;opacity:.11}.faq-contact{margin:30px auto 0}.faq-contact-links{justify-content:center}.coast-copy{align-items:center;padding:72px 24px;text-align:center}.coast-copy h2,.coast-copy>p:not(.place-line){max-width:100%}.coast-map,.coast-map iframe{min-height:360px}.booking-section{grid-template-columns:1fr}.booking-image{min-height:480px}.booking-planner{gap:24px;padding:64px 24px}.booking-planner-heading{align-items:start;flex-direction:column;gap:14px}.booking-terms{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-terms li{border-right:1px solid var(--sunstone-line);border-bottom:0}.booking-terms li:nth-child(2n){border-right:0}.booking-terms li:nth-child(-n+2){border-bottom:1px solid var(--sunstone-line)}.availability-calendar{padding:24px 18px}.calendar-months{grid-template-columns:1fr}.calendar-month:nth-child(2){display:none}.stay-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.stay-summary>div:nth-child(2){border-right:0}.stay-summary>div:nth-child(-n+2){border-bottom:1px solid var(--sunstone-line)}.booking-form{grid-template-columns:1fr}.booking-form-heading{align-items:start;flex-direction:column;gap:5px}.booking-form-heading span{max-width:none;text-align:left}.form-row-wide{grid-column:1}.site-footer{gap:20px;padding:44px 24px 30px}.footer-nav{gap:10px 20px}}@media(max-width:430px){.hero-place{max-width:24ch;font-size:.62rem;letter-spacing:.07em}h1{font-size:clamp(3.35rem,17vw,4.25rem)}.studio-copy{padding:34px 22px}.studio-facts dd{font-size:1.55rem}.interior-intro-card{min-height:440px;padding:36px 24px}.booking-image{min-height:430px}.booking-planner{padding:52px 16px}.calendar-toolbar{align-items:stretch;flex-direction:column}.calendar-navigation{justify-content:flex-end}.calendar-weekdays,.calendar-days{grid-template-columns:repeat(7,minmax(30px,1fr))}.calendar-day,.calendar-day-spacer{min-width:30px}.amenities-list div,.amenities-list div:nth-child(2n){grid-template-columns:44px 1px minmax(0,1fr);column-gap:14px;padding:18px}.amenities-list div:after{top:18px;bottom:18px;left:76px}.amenity-icon{width:44px;height:44px;padding:11px}.amenities-list strong{font-size:clamp(1.4rem,7vw,1.85rem)}.amenities-list span{max-width:none}.hero-content{padding-bottom:72px}.hero-copy{font-size:.95rem}.summary-facts dd{font-size:1.9rem}.interior-item,.interior-lounge,.interior-bath{min-height:340px}.distance-list li{align-items:baseline}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}@media(min-width:1081px)and (max-width:1599px){.amenities-section{grid-template-columns:minmax(330px,.72fr) minmax(0,1.28fr);gap:clamp(48px,4vw,64px);padding-inline:max(56px,calc((100vw - 1220px)/2))}.amenities-intro{width:min(100%,370px);align-self:start;justify-self:end;padding-top:8px}.amenities-list{width:100%;max-width:none}.faq-inner{width:min(calc(100vw - clamp(112px,14vw,224px)),1120px);grid-template-columns:minmax(300px,.78fr) minmax(0,1.22fr);gap:clamp(44px,4.8vw,72px)}.faq-intro{align-self:start;justify-self:end}.faq-contact{margin-top:clamp(48px,5vw,72px)}.faq-list{max-width:760px}h1{font-size:clamp(3.8rem,5.7vw,4.9rem)}h2{font-size:clamp(2.55rem,3.6vw,3.45rem)}h3{font-size:clamp(1.8rem,2.35vw,2.4rem)}main #studio #studio-title{font-size:clamp(2.55rem,3.3vw,3.45rem)}.interior-intro-card h2{font-size:clamp(2.25rem,3.1vw,3.2rem)}.coast-copy h2{font-size:clamp(2.35rem,3.3vw,3.35rem)}.faq-intro h2{font-size:clamp(2.45rem,3.6vw,3.45rem)}.booking-planner-heading h3{font-size:clamp(2.05rem,2.9vw,3rem)}.studio-facts dd{font-size:clamp(1.35rem,1.75vw,1.75rem)}.studio-media figure figcaption strong,.interior-item figcaption strong{font-size:clamp(1.4rem,1.9vw,2rem)}.coast-copy blockquote>p{font-size:clamp(1.55rem,1.9vw,2rem)}.faq-list summary{font-size:clamp(1.25rem,1.7vw,1.65rem)}.calendar-toolbar h4{font-size:clamp(1.5rem,1.9vw,2rem)}}@media(min-width:1200px)and (max-width:1599px){#studio{grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:clamp(1.25rem,2vw,2.25rem)}#studio .studio-copy{padding-inline:clamp(2rem,3.5vw,4rem)}#studio #studio-title{width:100%;max-inline-size:none;margin-inline:auto;font-size:clamp(2.75rem,3.5vw,3.8rem);text-wrap:balance}}@media(min-width:1200px)and (max-width:1699px){main #studio{display:grid;grid-template-columns:minmax(22rem,.72fr) minmax(0,1.28fr)!important;gap:clamp(1rem,1.4vw,1.5rem)!important;align-items:stretch}main #studio .studio-copy,main #studio .studio-media{width:auto;min-width:0;min-inline-size:0}main #studio .studio-copy{padding-inline:clamp(2rem,2.75vw,3rem)}main #studio #studio-title{max-inline-size:12ch;margin-inline:auto}main #studio .studio-media{display:grid;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:repeat(2,minmax(0,1fr))!important;gap:clamp(.75rem,1vw,1rem);min-height:0;height:100%;align-self:stretch}main #studio .studio-media>figure{min-width:0;min-height:0;height:100%}}
