:root{--ink:#183b45;--sea:#1f5564;--paper:#f3f0e8;--sand:#e4d8c7;--clay:#b86342;--white:#fff;--line:rgba(24,59,69,.18);--serif:"Italiana",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-weight:300;line-height:1.55}body.no-scroll{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{color:inherit}img{display:block;width:100%}.page-loader{position:fixed;inset:0;z-index:100;background:var(--ink);display:grid;place-items:center;color:var(--paper);transition:transform 1s cubic-bezier(.76,0,.24,1);transform-origin:top}.page-loader span{font:5rem var(--serif);animation:pulse 1s ease infinite alternate}.page-loader.loaded{transform:scaleY(0)}@keyframes pulse{to{opacity:.25}}
.site-header{position:absolute;z-index:20;top:0;left:0;width:100%;padding:25px 32px;display:flex;align-items:center;justify-content:space-between;color:#fff}.brand{display:flex;align-items:center;gap:11px}.brand-mark{width:37px;fill:none;stroke:currentColor;stroke-width:1.3}.brand strong{display:block;font:1.3rem/1 var(--serif);letter-spacing:.17em}.brand small{display:block;font-size:.53rem;letter-spacing:.26em;margin-top:5px}.header-actions{display:flex;align-items:center;gap:35px}.header-contact{font-size:.75rem;letter-spacing:.08em}.menu-trigger{width:92px;height:45px;border:1px solid rgba(255,255,255,.5);border-radius:100px;background:rgba(16,45,52,.12);color:#fff;display:flex;gap:7px;align-items:center;justify-content:center;cursor:pointer;backdrop-filter:blur(8px);transition:.25s}.menu-trigger:hover{background:#fff;color:var(--ink)}.menu-trigger span{text-transform:uppercase;font-size:.62rem;letter-spacing:.18em;margin-right:3px}.menu-trigger i{display:block;width:4px;height:4px;background:currentColor;border-radius:50%}
.weather-widget{position:absolute;z-index:12;top:86px;right:32px;width:215px;padding:17px 16px 14px;border:1px solid rgba(255,255,255,.28);border-radius:20px;background:linear-gradient(145deg,rgba(255,255,255,.22),rgba(255,255,255,.08));box-shadow:0 18px 55px rgba(5,30,38,.2),inset 0 1px 0 rgba(255,255,255,.25);backdrop-filter:blur(18px) saturate(145%);-webkit-backdrop-filter:blur(18px) saturate(145%);color:#fff;text-shadow:0 1px 18px rgba(7,35,43,.18)}.weather-topline{display:flex;justify-content:space-between;align-items:center;text-transform:uppercase;font-size:.5rem;letter-spacing:.11em}.weather-location{display:flex;align-items:center;gap:7px}.weather-location i{width:6px;height:6px;border-radius:50%;background:#d7e5b4;box-shadow:0 0 0 3px rgba(215,229,180,.16)}.weather-live{padding:3px 6px;border:1px solid rgba(255,255,255,.3);border-radius:20px}.weather-current{display:flex;align-items:center;justify-content:space-between;margin:10px 0 7px}.weather-current strong{font:3rem/.95 var(--serif);letter-spacing:-.04em}.weather-current p{margin:4px 0 0;font-size:.55rem;text-transform:uppercase;letter-spacing:.08em}.weather-main-icon{font-size:2.95rem;line-height:1;filter:grayscale(1) brightness(4);font-family:Arial,sans-serif}.weather-meta{display:grid;grid-template-columns:1fr 1fr;gap:7px 10px;padding:10px 0 12px;border-bottom:1px solid rgba(255,255,255,.22);font-size:.48rem;letter-spacing:.02em;color:rgba(255,255,255,.7)}.weather-meta b{display:block;color:#fff;font-size:.55rem;font-weight:500}.weather-forecast{display:grid;grid-template-columns:repeat(5,1fr);gap:2px;padding-top:11px;min-height:58px}.forecast-day{text-align:center}.forecast-day span{display:block;font-size:.44rem;text-transform:uppercase;letter-spacing:.04em;color:rgba(255,255,255,.68)}.forecast-day i{display:block;height:24px;font-style:normal;font-size:.92rem;line-height:24px;filter:grayscale(1) brightness(4)}.forecast-day b{font-size:.53rem;font-weight:500}.forecast-day small{display:block;font-size:.44rem;color:rgba(255,255,255,.55)}.weather-loading{grid-column:1/-1;align-self:center;text-align:center;font-size:.54rem;letter-spacing:.05em;color:rgba(255,255,255,.7)}.weather-updated{display:block;margin-top:9px;text-align:right;font-size:.41rem;letter-spacing:.04em;color:rgba(255,255,255,.52)}.weather-widget.is-error .weather-live{color:#f5d3c8}.weather-widget.is-error .weather-forecast{display:block;min-height:auto}.menu-overlay{position:fixed;z-index:15;inset:0;background:var(--ink);color:var(--paper);display:grid;grid-template-columns:42% 58%;visibility:hidden;clip-path:inset(0 0 100% 0);transition:clip-path .8s cubic-bezier(.76,0,.24,1),visibility .8s}.menu-overlay.open{visibility:visible;clip-path:inset(0)}.menu-visual{overflow:hidden}.menu-visual img{height:100%;object-fit:cover;filter:saturate(.65);transform:scale(1.12);transition:transform 1.2s .2s}.menu-overlay.open .menu-visual img{transform:scale(1)}.menu-panel{padding:120px 9% 55px;display:flex;flex-direction:column}.eyebrow{text-transform:uppercase;letter-spacing:.19em;font-size:.67rem;font-weight:500}.eyebrow.light{color:rgba(255,255,255,.8)}.menu-panel nav{margin:auto 0;display:flex;flex-direction:column}.menu-panel nav a{font:clamp(2.3rem,5vw,5rem)/1.08 var(--serif);border-bottom:1px solid rgba(255,255,255,.16);padding:.08em 0;transition:padding .25s,color .25s}.menu-panel nav a:hover{padding-left:20px;color:#d3ad85}.menu-panel nav span{font:500 .55rem var(--sans);letter-spacing:.15em;display:inline-block;width:45px;vertical-align:middle}.menu-meta{display:flex;justify-content:space-between;font-size:.7rem;letter-spacing:.08em;color:rgba(255,255,255,.64)}
.radio-player{position:absolute;z-index:12;top:400px;right:32px;width:215px;padding:16px;border:1px solid rgba(205,255,248,.35);border-radius:20px;background:linear-gradient(145deg,rgba(34,210,196,.64),rgba(5,113,120,.48));box-shadow:0 18px 48px rgba(3,52,58,.26),inset 0 1px 0 rgba(255,255,255,.28);backdrop-filter:blur(20px) saturate(150%);-webkit-backdrop-filter:blur(20px) saturate(150%);color:#fff}.radio-head{display:flex;align-items:center;justify-content:space-between}.radio-live{display:flex;align-items:center;gap:6px;text-transform:uppercase;font-size:.47rem;letter-spacing:.16em}.radio-live i{width:6px;height:6px;background:#ff7d68;border-radius:50%;box-shadow:0 0 0 4px rgba(255,125,104,.17);animation:radioPulse 1.4s ease-in-out infinite}.radio-volume{padding:0;border:0;background:none;color:rgba(255,255,255,.8);font-size:.65rem;cursor:pointer}.radio-name{margin:10px 0 0;text-transform:uppercase;font-size:.49rem;letter-spacing:.16em;color:rgba(255,255,255,.7)}.radio-player h2{margin:1px 0 12px;font:1.45rem/1 var(--serif);font-weight:400}.radio-now{display:grid;grid-template-columns:44px 1fr;gap:11px;align-items:center}.radio-play{width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.48);background:rgba(255,255,255,.18);color:#fff;display:grid;place-items:center;cursor:pointer;transition:.25s;box-shadow:inset 0 1px 0 rgba(255,255,255,.2)}.radio-play span{font-size:.72rem;margin-left:2px}.radio-play:hover{background:#fff;color:#08777a;transform:scale(1.04)}.radio-track-info{min-width:0}.radio-track-info small{display:block;text-transform:uppercase;font-size:.4rem;letter-spacing:.11em;color:rgba(255,255,255,.62)}.radio-track-info p{margin:3px 0 0;font-size:.59rem;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.radio-signal{height:24px;margin-top:12px;display:flex;align-items:center;gap:3px;overflow:hidden}.radio-signal i{display:block;flex:1;height:3px;border-radius:4px;background:rgba(255,255,255,.58);transform-origin:center}.radio-player.is-playing .radio-signal i{animation:radioWave .8s ease-in-out infinite alternate}.radio-signal i:nth-child(2n){animation-delay:-.2s!important}.radio-signal i:nth-child(3n){animation-delay:-.45s!important}.radio-signal i:nth-child(5n){animation-delay:-.65s!important}.radio-status{margin:3px 0 0;font-size:.4rem;letter-spacing:.05em;color:rgba(255,255,255,.62);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@keyframes radioWave{from{height:3px}to{height:21px}}@keyframes radioPulse{50%{opacity:.35;transform:scale(.7)}}
.hero{height:100svh;min-height:680px;position:relative;color:#fff;overflow:hidden}.hero-image{position:absolute;inset:0;height:100%;object-fit:cover;animation:heroZoom 14s ease-out both}@keyframes heroZoom{from{transform:scale(1.06)}to{transform:scale(1)}}.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(9,29,34,.14),rgba(9,29,34,.08) 45%,rgba(9,29,34,.62))}.hero-copy{position:absolute;left:7vw;right:7vw;bottom:9.5rem;transform:translateY(-70px)}.hero h1{font:clamp(4.3rem,9.3vw,9.7rem)/.8 var(--serif);letter-spacing:-.035em;margin:.22em 0 .32em}.hero h1 em,.display em,.closing h2 em{font-style:italic;color:#edcda8}.hero-bottom{display:flex;align-items:center;gap:5vw}.hero-bottom p{font-size:.92rem;margin:0}.hero-cta{width:235px;height:58px;padding:0 19px 0 23px;border:1px solid rgba(205,255,248,.42);border-radius:100px;background:linear-gradient(145deg,rgba(34,210,196,.7),rgba(5,113,120,.58));box-shadow:0 14px 36px rgba(3,52,58,.24),inset 0 1px 0 rgba(255,255,255,.28);backdrop-filter:blur(16px) saturate(150%);-webkit-backdrop-filter:blur(16px) saturate(150%);color:#fff;display:flex;align-items:center;justify-content:space-between;text-transform:uppercase;font-size:.61rem;font-weight:500;letter-spacing:.13em;transition:.25s}.hero-cta b{font-size:1.1rem;font-weight:400}.hero-cta:hover{background:#fff;color:#08777a;transform:translateY(-3px)}.hero-location{position:absolute;right:34px;bottom:10rem;transform:translateY(-50px);text-align:right;text-transform:uppercase;font-size:.59rem;letter-spacing:.18em}
.section{padding:130px max(6vw,35px)}.section-kicker{display:grid;grid-template-columns:54px 1fr;align-items:center;margin-bottom:75px}.section-kicker span{font-size:.65rem;letter-spacing:.1em}.section-kicker p{margin:0;border-left:1px solid var(--line);padding-left:24px;text-transform:uppercase;letter-spacing:.18em;font-size:.64rem;font-weight:500}.display{font:clamp(3.4rem,7vw,7.7rem)/.92 var(--serif);font-weight:400;letter-spacing:-.035em;margin:0}.display em{color:var(--clay)}.intro-grid{display:grid;grid-template-columns:1.5fr .65fr;gap:7vw;align-items:end}.intro-copy{max-width:480px}.intro-copy .lead{font:1.55rem/1.42 var(--serif);margin:0 0 30px}.intro-copy>p:not(.lead){font-size:.92rem;color:#52676d}.text-link{display:inline-flex;align-items:center;gap:16px;border-bottom:1px solid currentColor;padding:10px 0 7px;margin-top:22px;font-size:.72rem;font-weight:500;text-transform:uppercase;letter-spacing:.14em;background:none;border-left:0;border-right:0;border-top:0;cursor:pointer}.text-link span{transition:transform .25s}.text-link:hover span{transform:translate(4px,-4px)}.portrait-scene{margin:120px auto 0;width:70%;height:78vh;max-height:880px;position:relative}.portrait-scene img{height:100%;object-fit:cover}.floating-note{position:absolute;right:-60px;top:20%;width:155px;height:155px;border-radius:50%;background:var(--clay);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-transform:uppercase;letter-spacing:.15em;font-size:.55rem}.floating-note strong{font:3.5rem/1 var(--serif);letter-spacing:0}
.stay{background:var(--ink);color:var(--paper)}.stay .section-kicker p{border-color:rgba(255,255,255,.2)}.stay-head{display:grid;grid-template-columns:1.5fr .5fr;align-items:end;gap:6vw;margin-bottom:75px}.stay-head .display em{color:#d9b287}.stay-head>p{font-size:.92rem;color:rgba(255,255,255,.64);margin:0}.suite-card{display:grid;grid-template-columns:1.65fr .8fr;min-height:680px}.suite-photo{position:relative;overflow:hidden;background:#102f37}.suite-photo img{height:100%;object-fit:cover;transition:opacity .35s,transform .7s}.suite-photo img.changing{opacity:0;transform:scale(1.03)}.suite-photo>span{position:absolute;left:24px;bottom:20px;background:rgba(11,34,40,.75);padding:9px 16px;border-radius:30px;font-size:.62rem;letter-spacing:.14em;backdrop-filter:blur(9px)}.suite-details{background:var(--sand);color:var(--ink);padding:65px 10%;display:flex;flex-direction:column}.suite-details h3{font:3.4rem/1.05 var(--serif);margin:20px 0 35px}.suite-facts{display:flex;gap:13px;flex-wrap:wrap}.suite-facts span{border:1px solid rgba(24,59,69,.26);border-radius:30px;padding:7px 12px;font-size:.62rem;text-transform:uppercase;letter-spacing:.09em}.suite-details>p:not(.eyebrow){font-size:.88rem;color:#52676d;margin:35px 0}.suite-price{display:flex;align-items:baseline;gap:7px;margin-top:auto}.suite-price span{font-size:.63rem;text-transform:uppercase;letter-spacing:.1em}.suite-price strong{font:2.4rem var(--serif)}.suite-controls{display:flex;justify-content:flex-end;gap:8px}.suite-controls button{width:49px;height:49px;border-radius:50%;border:1px solid var(--ink);background:transparent;font-size:1.1rem;cursor:pointer;transition:.25s}.suite-controls button:hover{background:var(--ink);color:#fff}
.experience{display:grid;grid-template-columns:1.2fr 1fr;background:#d8b890}.experience-image{min-height:800px}.experience-image img{height:100%;object-fit:cover}.experience-copy{padding:115px 10%;display:flex;flex-direction:column;justify-content:center}.experience-copy .section-kicker{margin-bottom:65px}.experience-copy>p{max-width:480px;font-size:.92rem}.experience-copy .text-link{align-self:flex-start}.experience-copy .display em{color:#6f3d2d}
.island{padding-bottom:160px}.island-head{display:grid;grid-template-columns:1.4fr .5fr;gap:7vw;align-items:end}.island-head p{color:#52676d;font-size:.9rem}.island-gallery{display:grid;grid-template-columns:1.3fr .55fr;gap:8vw;margin-top:100px;align-items:center}.island-gallery figure{margin:0}.island-gallery .wide img{height:590px;object-fit:cover}.island-gallery .tall img{height:680px;object-fit:cover}.island-gallery figcaption{display:flex;gap:18px;margin-top:17px;text-transform:uppercase;letter-spacing:.12em;font-size:.62rem}.island-gallery figcaption span{opacity:.45}
.closing{height:88vh;min-height:650px;position:relative;color:#fff;display:grid;place-items:center;text-align:center;overflow:hidden}.closing>img,.closing-overlay{position:absolute;inset:0;height:100%;object-fit:cover}.closing-overlay{background:rgba(7,27,34,.4)}.closing-copy{position:relative}.closing h2{font:clamp(4rem,8vw,8.5rem)/.86 var(--serif);margin:.25em 0 .4em;letter-spacing:-.03em}.pill-button{border:0;border-radius:100px;background:var(--clay);color:#fff;text-transform:uppercase;letter-spacing:.14em;font-size:.65rem;padding:17px 23px;cursor:pointer;transition:.25s}.pill-button span{margin-left:18px}.pill-button:hover{background:#fff;color:var(--ink);transform:translateY(-2px)}
footer{background:#102f37;color:rgba(255,255,255,.73);padding:90px max(6vw,35px) 155px;display:grid;grid-template-columns:1.4fr 1fr 1fr .7fr;gap:30px;position:relative;font-size:.75rem}footer a{display:block;margin-bottom:7px}footer .footer-brand strong{display:block;color:#fff;font:3rem/1 var(--serif);letter-spacing:.1em}.footer-brand span{font-size:.58rem;letter-spacing:.25em}footer small{position:absolute;bottom:110px;left:max(6vw,35px);font-size:.58rem;opacity:.6}
.booking-bar{position:fixed;z-index:30;left:50%;bottom:20px;transform:translateX(-50%);width:min(1040px,calc(100% - 40px));background:rgba(255,255,255,.84);border:1px solid rgba(255,255,255,.72);border-radius:100px;padding:9px 9px 9px 28px;box-shadow:0 14px 50px rgba(11,31,36,.2),inset 0 1px 0 rgba(255,255,255,.88);backdrop-filter:blur(22px) saturate(145%);-webkit-backdrop-filter:blur(22px) saturate(145%)}.booking-bar form{display:grid;grid-template-columns:1fr 1fr .8fr 1.2fr;align-items:center}.booking-bar label{padding:0 25px;border-right:1px solid var(--line)}.booking-bar .guest-field{border-right:0}.booking-bar label span{display:block;text-transform:uppercase;font-size:.55rem;letter-spacing:.14em;font-weight:600}.booking-bar input,.booking-bar select{width:100%;border:0;padding:3px 0;background:transparent;color:var(--ink);font-size:.78rem;outline:0}.book-submit{height:58px;border:0;border-radius:100px;background:var(--ink);color:#fff;text-transform:uppercase;letter-spacing:.12em;font-size:.61rem;display:flex;justify-content:space-between;align-items:center;padding:0 24px;cursor:pointer;transition:.25s}.book-submit:hover{background:var(--clay)}.book-submit b{font-size:1.1rem}.mobile-book{display:none}
.booking-bar input[type="date"]{padding-right:12px}.booking-bar input[type="date"]::-webkit-calendar-picker-indicator{cursor:pointer;transform:scale(1.75);transform-origin:right center;margin-right:2px;margin-left:7px;opacity:1;background:url("./assets/calendar-turquoise.svg") center/contain no-repeat;color:transparent;filter:none}
.booking-dialog{position:fixed;z-index:50;inset:0;background:rgba(7,26,31,.72);backdrop-filter:blur(12px);display:grid;place-items:center;padding:25px;opacity:0;visibility:hidden;transition:.35s}.booking-dialog.open{opacity:1;visibility:visible}.dialog-inner{background:var(--paper);width:min(640px,100%);max-height:90vh;overflow:auto;padding:55px 60px;transform:translateY(30px);transition:.45s}.booking-dialog.open .dialog-inner{transform:translateY(0)}.dialog-close{position:absolute;top:25px;right:30px;color:#fff;border:1px solid rgba(255,255,255,.6);background:transparent;border-radius:50%;width:44px;height:44px;font-size:1.5rem;cursor:pointer}.dialog-inner h2{font:3.6rem/1 var(--serif);margin:15px 0 30px}.booking-summary{background:#e6ded0;padding:15px 20px;display:flex;justify-content:space-between;margin-bottom:25px;font-size:.78rem}.booking-summary strong{display:block}.guestForm{display:grid}.dialog-inner label{font-size:.61rem;text-transform:uppercase;letter-spacing:.1em;font-weight:500}.dialog-inner input,.dialog-inner select{display:block;width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;padding:10px 0 12px;margin-bottom:18px;outline:0;font-size:.9rem;text-transform:none;letter-spacing:0}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:25px}.dialog-inner .consent{display:flex;gap:9px;align-items:flex-start;text-transform:none;letter-spacing:0;font-weight:300}.dialog-inner .consent input{width:auto;margin:4px 0}.dialog-inner .pill-button{margin-top:22px;width:100%}.booking-success{text-align:center;padding:35px 5px}.booking-success>span{display:grid;place-items:center;margin:auto;width:60px;height:60px;border-radius:50%;background:var(--clay);color:#fff;font-size:1.5rem}.booking-success h3{font:3.8rem var(--serif);margin:20px 0 8px}.booking-success p{font-size:.9rem}.reveal{opacity:0;transform:translateY(40px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.7,.2,1)}.reveal.in{opacity:1;transform:none}
@media(max-width:900px){.site-header{padding:20px}.header-contact{display:none}.hero{min-height:620px}.hero-copy{left:25px;right:25px;bottom:8rem}.hero h1{font-size:clamp(4.4rem,18vw,7rem)}.hero-bottom{align-items:center}.hero-location{display:none}.circle-link{width:75px;height:75px;flex:0 0 auto}.menu-overlay{grid-template-columns:1fr}.menu-visual{display:none}.menu-panel{padding:110px 35px 50px}.menu-panel nav a{font-size:3.2rem}.section{padding:95px 25px}.section-kicker{margin-bottom:50px}.intro-grid,.stay-head,.island-head{grid-template-columns:1fr}.intro-copy{margin-top:45px}.portrait-scene{width:90%;height:65vh;margin-top:80px}.floating-note{right:-20px;width:120px;height:120px}.suite-card{grid-template-columns:1fr;min-height:0}.suite-photo{height:60vh}.suite-details{min-height:500px;padding:50px 35px}.experience{grid-template-columns:1fr}.experience-image{min-height:55vh}.experience-copy{padding:90px 25px}.island-gallery{grid-template-columns:1fr;gap:70px;margin-top:70px}.island-gallery .wide img,.island-gallery .tall img{height:60vh}.island-gallery .tall{width:76%;margin-left:auto}.closing{height:75vh}.booking-bar{padding:7px;width:calc(100% - 24px)}.booking-bar form{display:none}.mobile-book{width:100%;height:62px;border:0;border-radius:100px;background:var(--ink);color:#fff;display:flex;justify-content:space-between;align-items:center;padding:0 23px;text-transform:uppercase;font-size:.62rem;letter-spacing:.14em}.mobile-book b{font-weight:400}.booking-bar.mobile-open{border-radius:25px;padding:20px}.booking-bar.mobile-open .mobile-book{display:none}.booking-bar.mobile-open form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.booking-bar.mobile-open label{padding:8px 12px;border:1px solid var(--line);border-radius:10px}.booking-bar.mobile-open .guest-field{grid-column:1/-1}.booking-bar.mobile-open .book-submit{grid-column:1/-1}footer{grid-template-columns:1fr 1fr;padding-bottom:150px}.footer-brand{grid-column:1/-1}}
@media(max-width:560px){.brand strong{font-size:1rem}.brand-mark{width:31px}.menu-trigger{width:78px}.hero-bottom p{font-size:.75rem}.circle-link{display:none}.display{font-size:3.15rem}.portrait-scene{width:100%;height:56vh}.suite-photo{height:48vh}.suite-details h3{font-size:2.7rem}.suite-details{min-height:470px}.experience-image{min-height:46vh}.island-gallery .wide img,.island-gallery .tall img{height:48vh}.closing h2{font-size:3.7rem}.dialog-inner{padding:42px 25px}.dialog-inner h2{font-size:2.7rem}.field-row{grid-template-columns:1fr;gap:0}.booking-summary{gap:12px;flex-direction:column}.menu-panel nav a{font-size:2.7rem}.menu-meta{flex-direction:column;gap:8px}footer{grid-template-columns:1fr}.footer-brand{grid-column:auto}}
@media(max-width:900px){.weather-widget{top:78px;right:20px;width:215px}.radio-player{top:392px;right:20px;width:215px}}
.hero-widgets{position:absolute;z-index:12;top:86px;right:32px;width:215px;display:grid;gap:20px}.hero-widgets .weather-widget,.hero-widgets .radio-player{position:relative;z-index:auto;top:auto;right:auto;width:100%}@media(max-width:900px){.hero-widgets{top:78px;right:20px}}
.widget-head-actions{display:flex;align-items:center;gap:7px}.widget-toggle{width:24px;height:24px;padding:0;border:1px solid rgba(255,255,255,.3);border-radius:50%;background:rgba(255,255,255,.1);color:#fff;display:grid;place-items:center;cursor:pointer;transition:background .25s,transform .35s}.widget-toggle:hover{background:rgba(255,255,255,.24)}.widget-toggle svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.6;transition:transform .35s}.weather-widget:not(.is-collapsed) .widget-toggle svg,.radio-player:not(.is-collapsed) .widget-toggle svg{transform:rotate(180deg)}.weather-widget,.radio-player{overflow:hidden;transition:max-height .5s cubic-bezier(.2,.7,.2,1),padding .4s ease,background .35s ease}.weather-widget{max-height:330px}.radio-player{max-height:260px}.weather-widget.is-collapsed,.radio-player.is-collapsed{max-height:58px;padding:11px 13px;border-radius:17px}.weather-widget.is-collapsed>:not(.weather-topline),.radio-player.is-collapsed>:not(.radio-head){display:none}.weather-widget.is-collapsed .weather-live{display:none}.weather-mini{display:none;align-items:center;gap:5px}.weather-mini b{font:1.05rem/1 var(--serif);font-weight:400}.weather-mini i{font-style:normal;font-size:.85rem;filter:grayscale(1) brightness(4)}.weather-widget.is-collapsed .weather-mini{display:flex}.radio-mini-title{display:none;font:1rem/1 var(--serif);white-space:nowrap}.radio-mini-play{display:none;width:26px;height:26px;padding:0;border:1px solid rgba(255,255,255,.38);border-radius:50%;background:rgba(255,255,255,.14);color:#fff;place-items:center;cursor:pointer}.radio-mini-play span{font-size:.48rem;margin-left:1px}.radio-player.is-collapsed .radio-mini-title,.radio-player.is-collapsed .radio-mini-play{display:grid}.radio-player.is-collapsed .radio-volume{display:none}.radio-player.is-collapsed .radio-head{gap:7px}.radio-player.is-collapsed .radio-live{font-size:.43rem}.radio-player.is-collapsed .radio-live i{width:5px;height:5px}.radio-player.is-playing.is-collapsed .radio-mini-play{background:#fff;color:#08777a}
.back-to-top{position:fixed;z-index:31;right:32px;bottom:29px;width:58px;height:58px;padding:0;border:1px solid rgba(205,255,248,.38);border-radius:50%;background:linear-gradient(145deg,rgba(34,210,196,.68),rgba(5,113,120,.56));box-shadow:0 14px 36px rgba(3,52,58,.24),inset 0 1px 0 rgba(255,255,255,.3);backdrop-filter:blur(18px) saturate(150%);-webkit-backdrop-filter:blur(18px) saturate(150%);color:#fff;display:grid;place-content:center;gap:0;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(14px);transition:opacity .3s,visibility .3s,transform .3s,background .25s}.back-to-top.visible{opacity:1;visibility:visible;transform:none}.back-to-top:hover{background:rgba(255,255,255,.88);color:#08777a;transform:translateY(-3px)}.back-to-top svg{width:20px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5}.back-to-top span{text-transform:uppercase;font-size:.42rem;letter-spacing:.13em}@media(max-width:900px){.back-to-top{right:20px;bottom:32px;width:52px;height:52px}}
@media(max-width:560px){.hero-widgets{top:78px;left:20px;right:20px;width:auto}.hero-widgets .weather-widget,.hero-widgets .radio-player{width:100%}}
@media(max-width:560px){.hero-bottom{align-items:flex-start;flex-direction:column;gap:18px}.hero-cta{width:min(235px,100%);height:54px}}
.experience-image{overflow:hidden}.experience-image img.parallax-media{height:118%;margin-top:-9%;will-change:transform}.closing>img.parallax-media{inset:-9% 0 auto;height:118%;will-change:transform}.closing-cta{margin:0 auto}.closing-cta span{margin:0}.closing-cta:hover{background:#fff;color:#08777a}
.facilities-carousel{--facility-gap:18px;position:relative;z-index:11;margin-top:-140px;padding:0 4vw 78px;overflow:visible}.facilities-top{height:56px;display:flex;align-items:flex-start;justify-content:space-between;color:#fff}.facilities-top>div:first-child{display:flex;align-items:baseline;gap:18px;text-shadow:0 2px 15px rgba(5,30,38,.25)}.facilities-top span{text-transform:uppercase;font-size:.53rem;letter-spacing:.16em}.facilities-top strong{font:1.25rem var(--serif);font-weight:400}.facilities-controls{display:flex;gap:8px}.facilities-arrow{width:44px;height:44px;padding:0;border:1px solid rgba(255,255,255,.44);border-radius:50%;background:rgba(255,255,255,.16);box-shadow:0 8px 24px rgba(4,32,39,.16),inset 0 1px 0 rgba(255,255,255,.22);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);color:#fff;display:grid;place-items:center;cursor:pointer;transition:.25s}.facilities-arrow:hover{background:#fff;color:var(--ink);transform:translateY(-2px)}.facilities-viewport{overflow:hidden;touch-action:pan-y}.facilities-track{display:flex;gap:var(--facility-gap);will-change:transform;transition:transform .75s cubic-bezier(.22,.72,.22,1)}.facility-card{position:relative;flex:0 0 calc((100% - 54px)/4);aspect-ratio:1;margin:0;overflow:hidden;border-radius:3px;background:var(--ink);color:#fff}.facility-card:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(5,25,31,.82))}.facility-card img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease}.facility-card:hover img{transform:scale(1.045)}.facility-card>div{position:absolute;z-index:1;left:20px;right:20px;bottom:17px}.facility-card span{font-size:.48rem;letter-spacing:.15em;color:rgba(255,255,255,.72)}.facility-card h3{font:1.65rem/1.05 var(--serif);font-weight:400;margin:4px 0}.facility-card p{margin:0;font-size:.63rem;color:rgba(255,255,255,.75)}@media(max-width:1100px){.facility-card{flex-basis:calc((100% - 36px)/3)}.facilities-carousel{padding-left:25px;padding-right:25px}}@media(max-width:560px){.facilities-carousel{margin-top:-105px;padding:0 20px 62px;--facility-gap:14px}.facilities-top{height:52px}.facilities-top>div:first-child{display:block}.facilities-top strong{display:block;font-size:1.05rem}.facilities-top span{font-size:.45rem}.facilities-arrow{width:40px;height:40px}.facility-card{flex-basis:100%}.facility-card>div{left:22px;bottom:20px}.facility-card h3{font-size:2rem}.facility-card p{font-size:.7rem}}
.facility-card:before{content:"";position:absolute;z-index:3;left:50%;top:50%;width:58px;height:58px;border:1px solid rgba(255,255,255,.62);border-radius:50%;background-color:rgba(9,63,69,.2);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3.8-6.5 10-6.5S22 12 22 12s-3.8 6.5-10 6.5S2 12 2 12Z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:28px;box-shadow:inset 0 1px 0 rgba(255,255,255,.2);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);opacity:0;transform:translate(-50%,-42%) scale(.82);transition:opacity .35s,transform .35s;pointer-events:none}.facility-card img{transition:transform .65s ease,filter .45s ease}.facility-card:hover img{filter:blur(3px) brightness(.8);transform:scale(1.065)}.facility-card:hover:before{opacity:1;transform:translate(-50%,-50%) scale(1)}
.facilities-stage{position:relative}.facilities-controls{position:absolute;z-index:6;left:-22px;right:-22px;top:50%;transform:translateY(-50%);display:flex;justify-content:space-between;pointer-events:none}.facilities-arrow{pointer-events:auto}@media(max-width:560px){.facilities-controls{left:-20px;right:-20px}}
.hero-location{right:4vw}@media(max-width:1100px) and (min-width:901px){.hero-location{right:25px}}
.welcome-message{margin:0 0 17px;padding:0;border:0;background:none;color:#fff;display:inline-flex;align-items:center;gap:10px;cursor:pointer;text-align:left}.welcome-portrait{width:62px;height:62px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.72);box-shadow:0 8px 28px rgba(5,30,38,.26);transition:transform .3s}.welcome-message:hover .welcome-portrait{transform:scale(1.045)}.welcome-video-icon{width:32px;height:32px;margin-left:-19px;border:1px solid rgba(255,255,255,.56);border-radius:50%;background:linear-gradient(145deg,rgba(34,210,196,.72),rgba(5,113,120,.62));box-shadow:0 8px 22px rgba(3,52,58,.25);backdrop-filter:blur(10px);display:grid;place-items:center}.welcome-video-icon svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.5}.welcome-label small,.welcome-label strong{display:block}.welcome-label small{text-transform:uppercase;font-size:.42rem;letter-spacing:.14em;color:rgba(255,255,255,.68)}.welcome-label strong{font:1rem var(--serif);font-weight:400;letter-spacing:.02em}.welcome-modal{position:fixed;z-index:70;inset:0;padding:24px;background:rgba(5,25,31,.72);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);display:grid;place-items:center;opacity:0;visibility:hidden;transition:opacity .4s,visibility .4s}.welcome-modal.open{opacity:1;visibility:visible}.welcome-video-frame{width:min(960px,100%);padding:14px;border:1px solid rgba(255,255,255,.82);border-radius:22px;background:rgba(255,255,255,.65);box-shadow:0 26px 80px rgba(3,23,29,.42),inset 0 1px 0 rgba(255,255,255,.92);backdrop-filter:blur(24px) saturate(135%);-webkit-backdrop-filter:blur(24px) saturate(135%);transform:translateY(25px) scale(.97);transition:transform .45s cubic-bezier(.2,.72,.2,1)}.welcome-modal.open .welcome-video-frame{transform:none}.welcome-video-heading{height:38px;padding:0 2px 10px 8px;display:flex;align-items:center;justify-content:space-between;color:var(--ink);text-transform:uppercase;font-size:.54rem;letter-spacing:.14em}.welcome-close{width:30px;height:30px;padding:0;border:1px solid rgba(24,59,69,.3);border-radius:50%;background:rgba(255,255,255,.35);color:var(--ink);font-size:1.2rem;line-height:1;cursor:pointer}.welcome-video-frame video{display:block;width:100%;max-height:76vh;border-radius:13px;background:#071b20;object-fit:contain}@media(max-width:560px){.hero{min-height:840px}.welcome-message{margin-bottom:13px}.welcome-portrait{width:54px;height:54px}.welcome-label strong{font-size:.9rem}.welcome-modal{padding:12px}.welcome-video-frame{padding:8px;border-radius:16px}.welcome-video-frame video{border-radius:10px;max-height:72vh}}
.welcome-modal{transition:opacity .5s ease,visibility 0s linear .78s}.welcome-modal.open{transition:opacity .42s ease,visibility 0s;visibility:visible;opacity:1}.welcome-video-frame{opacity:0;transform:translate3d(var(--welcome-origin-x,0),var(--welcome-origin-y,0),0) scale(.06);transform-origin:center;transition:transform .78s cubic-bezier(.18,1.42,.32,1),opacity .38s ease}.welcome-modal.open .welcome-video-frame{opacity:1;transform:translate3d(0,0,0) scale(1)}.welcome-modal.open.closing{opacity:0}.welcome-modal.open.closing .welcome-video-frame{opacity:0;transform:translate3d(var(--welcome-origin-x,0),var(--welcome-origin-y,0),0) scale(.06);transition:transform .62s cubic-bezier(.62,-.28,.82,.16),opacity .46s ease .08s}
.welcome-message{gap:13px}.welcome-portrait{width:81px;height:81px}.welcome-video-icon{width:42px;height:42px;margin-left:-25px}.welcome-video-icon svg{width:20px;height:20px}.welcome-label small{font-size:.55rem}.welcome-label strong{font-size:1.3rem}@media(max-width:560px){.welcome-portrait{width:70px;height:70px}.welcome-video-icon{width:37px;height:37px;margin-left:-22px}.welcome-video-icon svg{width:18px;height:18px}.welcome-label small{font-size:.5rem}.welcome-label strong{font-size:1.17rem}}
.welcome-video-frame{width:min(672px,100%);padding:11px}.welcome-video-frame video{max-height:68vh}@media(max-width:560px){.welcome-video-frame{width:min(672px,100%);padding:7px}.welcome-video-frame video{max-height:66vh}}
.welcome-modal.open.closing .welcome-video-frame{opacity:0;transform:scale(.06);transition:transform .58s cubic-bezier(.4,0,1,1),opacity .42s ease .06s}
.hero-copy>.welcome-message,.hero-copy>.eyebrow,.hero-copy>h1{margin-left:0}
.welcome-video-frame video::-webkit-media-controls-timeline,.welcome-video-frame video::-webkit-media-controls-current-time-display,.welcome-video-frame video::-webkit-media-controls-time-remaining-display{display:none!important}
.whatsapp-launcher{position:fixed;z-index:33;right:32px;bottom:29px;width:58px;height:58px;padding:0;border:1px solid rgba(205,255,248,.42);border-radius:50%;background:linear-gradient(145deg,rgba(34,210,196,.78),rgba(5,113,120,.68));box-shadow:0 14px 36px rgba(3,52,58,.3),inset 0 1px 0 rgba(255,255,255,.32);backdrop-filter:blur(18px) saturate(150%);-webkit-backdrop-filter:blur(18px) saturate(150%);color:#fff;display:grid;place-items:center;cursor:pointer;transition:.3s}.whatsapp-launcher:hover{transform:translateY(-3px) scale(1.03);background:#fff;color:#08777a}.whatsapp-launcher svg{width:29px;height:29px;fill:none;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round}.whatsapp-launcher>span{position:absolute;right:2px;top:2px;width:12px;height:12px;border:2px solid #fff;border-radius:50%;background:#9bd867;box-shadow:0 0 0 3px rgba(155,216,103,.2)}.back-to-top{right:104px}.whatsapp-panel{position:fixed;z-index:34;right:32px;bottom:100px;width:330px;border:0;border-radius:22px;background:rgba(255,255,255,.77);box-shadow:0 24px 70px rgba(4,33,40,.32);backdrop-filter:blur(24px) saturate(145%);-webkit-backdrop-filter:blur(24px) saturate(145%);overflow:hidden;opacity:0;visibility:hidden;transform:translateY(18px) scale(.94);transform-origin:bottom right;transition:opacity .3s,visibility .3s,transform .4s cubic-bezier(.2,.9,.25,1.18)}.whatsapp-panel.open{opacity:1;visibility:visible;transform:none}.whatsapp-head{padding:16px;background:linear-gradient(135deg,rgba(33,203,191,.88),rgba(5,113,120,.8));color:#fff;display:flex;align-items:center;gap:11px}.eleni-avatar{position:relative;flex:0 0 auto}.eleni-avatar img{width:52px;height:52px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.78)}.eleni-avatar i{position:absolute;right:0;bottom:2px;width:11px;height:11px;border:2px solid #fff;border-radius:50%;background:#9bd867}.whatsapp-head h2{font:1.35rem/1 var(--serif);font-weight:400;margin:0}.whatsapp-head p{margin:4px 0 0;font-size:.56rem;text-transform:uppercase;letter-spacing:.12em;color:rgba(255,255,255,.75)}.whatsapp-close{margin-left:auto;width:30px;height:30px;padding:0;border:1px solid rgba(255,255,255,.36);border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font-size:1.2rem;cursor:pointer}.whatsapp-body{padding:17px}.support-label{text-transform:uppercase;font-size:.47rem;letter-spacing:.13em;color:#64787c}.eleni-message{position:relative;margin:9px 0 9px;padding:12px 13px;border-radius:4px 14px 14px 14px;background:rgba(31,179,169,.12);color:var(--ink);font-size:.76rem;line-height:1.5}.whatsapp-body>small{display:flex;align-items:center;gap:6px;font-size:.47rem;color:#738488}.whatsapp-body>small i{width:6px;height:6px;border-radius:50%;background:#87c65e}.whatsapp-body form{margin-top:14px}.whatsapp-body label{display:block;margin-bottom:5px;text-transform:uppercase;font-size:.45rem;letter-spacing:.12em;color:#64787c}.whatsapp-body textarea{display:block;width:100%;resize:none;border:1px solid rgba(24,59,69,.14);border-radius:11px;background:rgba(255,255,255,.58);padding:10px 11px;color:var(--ink);font:300 .72rem/1.45 var(--sans);outline:none}.whatsapp-body textarea:focus{border-color:rgba(21,170,161,.55);box-shadow:0 0 0 3px rgba(21,170,161,.1)}.whatsapp-body form button{width:100%;height:44px;margin-top:9px;padding:0 15px;border:0;border-radius:100px;background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:space-between;text-transform:uppercase;font-size:.52rem;letter-spacing:.11em;cursor:pointer;transition:.25s}.whatsapp-body form button:hover{background:#0d8d88}.whatsapp-body form button b{font-size:1rem;font-weight:400}@media(max-width:560px){.whatsapp-launcher{right:20px;bottom:128px;width:52px;height:52px}.back-to-top{right:20px;bottom:194px}.whatsapp-panel{right:12px;bottom:190px;width:calc(100% - 24px)}}
.whatsapp-launcher .whatsapp-receiver{transform-box:fill-box;transform-origin:center;transform:translateY(1px) scale(.7)}
.motion-reveal{opacity:0;filter:blur(3px);transform:translate3d(var(--motion-x,0),var(--motion-y,22px),0);transition:opacity var(--motion-duration,1.25s) ease var(--motion-delay,0s),transform var(--motion-duration,1.25s) cubic-bezier(.16,.7,.2,1) var(--motion-delay,0s),filter var(--motion-duration,1.25s) ease var(--motion-delay,0s)}.motion-reveal.motion-in{opacity:1;filter:none;transform:translate3d(0,0,0)}.motion-opacity{opacity:0;transition:opacity var(--motion-duration,1.6s) ease var(--motion-delay,0s)}.motion-opacity.motion-in{opacity:1}.hero-motion{opacity:0;filter:blur(3px);transform:none;transition:opacity var(--hero-duration,1.25s) ease var(--hero-delay,.25s),filter var(--hero-duration,1.25s) ease var(--hero-delay,.25s)}.hero-motion.hero-in{opacity:1;filter:none;transform:none}.hero-cta.hero-in:hover{transform:translateY(-3px)}.hero-fade{opacity:0;transition:opacity 2s ease .1s}.hero-fade.hero-in{opacity:1}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition-duration:.01ms!important}.reveal,.motion-reveal,.motion-opacity,.hero-motion,.hero-fade{opacity:1!important;filter:none!important;transform:none!important}}

/* Responsive hardening */
html,body{max-width:100%;overflow-x:clip}.hero-copy,.section,.experience-copy,footer{min-width:0}.suite-card,.intro-grid,.stay-head,.island-head,.island-gallery,.experience{min-width:0}.suite-details,.intro-copy,.experience-copy,.island-head>*{min-width:0}.display,.hero h1,.closing h2{overflow-wrap:break-word}.facilities-stage,.facilities-viewport{min-width:0}
@media(max-width:1100px) and (min-width:901px){.hero-copy{left:4vw;right:4vw}.hero h1{font-size:clamp(4.7rem,9vw,7.2rem)}.suite-card{grid-template-columns:1.35fr .8fr}.suite-details{padding:52px 8%}.suite-details h3{font-size:2.8rem}.booking-bar{width:calc(100% - 180px)}}
@media(max-width:900px){.hero-copy{transform:translateY(-42px)}.hero-widgets{max-width:calc(100vw - 40px)}.facilities-carousel{overflow:hidden}.suite-card,.experience,.island-gallery{width:100%}.booking-bar{z-index:40}.whatsapp-launcher,.back-to-top{z-index:41}}
@media(max-width:560px){.site-header{padding:16px 18px}.hero{height:auto;min-height:max(760px,100svh)}.hero-copy{left:20px;right:20px;bottom:8.25rem;transform:translateY(-20px)}.hero h1{font-size:clamp(3.55rem,17.5vw,5.6rem);line-height:.84}.hero-bottom{max-width:100%}.hero-bottom p br{display:none}.welcome-label{min-width:0}.welcome-label strong{white-space:normal}.facilities-carousel{padding-left:18px;padding-right:18px}.section{padding-left:20px;padding-right:20px}.display{font-size:clamp(2.7rem,13vw,3.4rem)}.stay-head{margin-bottom:48px}.suite-photo{min-height:330px}.suite-details{padding:42px 24px}.suite-controls{margin-top:20px}.experience-copy{padding-left:20px;padding-right:20px}.island-gallery .tall{width:88%}.closing-copy{left:20px;right:20px}.closing h2{font-size:clamp(3rem,15vw,4rem)}footer{padding-left:22px;padding-right:22px;gap:22px}footer small{left:22px}.booking-bar.mobile-open{max-height:calc(100svh - 24px);overflow:auto}.booking-bar.mobile-open form{grid-template-columns:1fr}.booking-bar.mobile-open label,.booking-bar.mobile-open .guest-field,.booking-bar.mobile-open .book-submit{grid-column:1}.whatsapp-panel{max-height:calc(100svh - 180px);overflow:auto}}
@media(max-width:390px){.brand small{display:none}.menu-trigger{width:72px}.hero-widgets{left:12px;right:12px;top:72px}.hero-copy{left:16px;right:16px}.welcome-portrait{width:60px;height:60px}.welcome-video-icon{width:33px;height:33px}.welcome-label small{font-size:.43rem}.welcome-label strong{font-size:1rem}.facilities-carousel{padding-left:14px;padding-right:14px}.booking-bar{width:calc(100% - 16px)}.mobile-book{padding:0 18px}.whatsapp-panel{right:8px;width:calc(100% - 16px)}}
@media(max-width:560px){.hero-copy>.welcome-message{position:relative;top:18px}}
.hero-image{width:100%;max-width:none;object-position:center}
@media(max-width:560px){.hero{min-height:max(880px,105svh)}.hero-copy{transform:translateY(10px)}.hero-copy>.welcome-message{top:0}}
@media(max-width:560px){.weather-widget.is-collapsed,.radio-player.is-collapsed{max-height:68px;min-height:68px;padding:14px 16px;border-radius:19px}.weather-topline{font-size:.67rem;letter-spacing:.1em}.weather-location{gap:9px}.weather-location i{width:8px;height:8px}.weather-mini{gap:8px}.weather-mini b{font-size:1.36rem}.weather-mini i{font-size:1.12rem}.radio-mini-title{font-size:1.28rem}.radio-player.is-collapsed .radio-live{font-size:.57rem}.radio-player.is-collapsed .radio-live i{width:7px;height:7px}.radio-mini-play{width:32px;height:32px}.radio-mini-play span{font-size:.62rem}.widget-toggle{width:32px;height:32px}.widget-toggle svg{width:16px;height:16px}.widget-head-actions{gap:9px}.weather-current strong{font-size:3.35rem}.weather-current p{font-size:.68rem}.weather-meta{font-size:.59rem}.weather-meta b{font-size:.67rem}.forecast-day span,.forecast-day small{font-size:.52rem}.forecast-day b{font-size:.64rem}.weather-updated{font-size:.49rem}.radio-name{font-size:.58rem}.radio-player h2{font-size:1.68rem}.radio-track-info small,.radio-status{font-size:.5rem}.radio-track-info p{font-size:.7rem}}
.booking-bar input[readonly]{cursor:pointer}.booking-bar .date-field{position:relative}.booking-bar .date-field input{padding-right:34px;background:none!important}.booking-bar .date-field:after{content:"";position:absolute;right:22px;top:50%;width:20px;height:20px;transform:translateY(-18%);background:url("./assets/calendar-turquoise.svg") center/contain no-repeat;pointer-events:none;opacity:1}.booking-bar input#checkin::-webkit-calendar-picker-indicator,.booking-bar input#checkout::-webkit-calendar-picker-indicator{display:none;-webkit-appearance:none}.date-popover,.guest-popover{position:fixed;z-index:80;border:0;border-radius:24px;background:rgba(255,255,255,.92);box-shadow:0 24px 65px rgba(5,33,39,.22);backdrop-filter:blur(22px) saturate(145%);-webkit-backdrop-filter:blur(22px) saturate(145%);color:var(--ink);overflow:hidden;opacity:0;visibility:hidden;transform:translateY(10px) scale(.96);transform-origin:bottom center;transition:opacity .2s ease,visibility .2s ease,transform .25s cubic-bezier(.2,.8,.2,1)}.date-popover.open,.guest-popover.open{opacity:1;visibility:visible;transform:none}.date-popover{width:292px;padding:16px}.date-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.date-head strong{font:1.35rem/1 var(--serif);font-weight:400}.date-head button,.guest-option{border:0;background:transparent;color:var(--ink);cursor:pointer}.date-head button{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-size:1.1rem}.date-head button:hover,.date-day:hover,.date-day.is-selected{background:rgba(28,188,179,.14)}.date-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.date-dow{text-align:center;font-size:.5rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(20,66,75,.55);padding-bottom:3px}.date-day{height:34px;border:0;border-radius:50%;background:transparent;color:var(--ink);cursor:pointer;font:.72rem var(--sans)}.date-day.is-muted{opacity:.32;pointer-events:none}.date-day.is-today{box-shadow:inset 0 0 0 1px rgba(26,180,171,.28)}.date-day.is-selected{color:#08777a;font-weight:600}.guest-select-native{position:absolute!important;opacity:0!important;pointer-events:none!important;width:1px!important;height:1px!important}.guest-picker-button{width:100%;border:0;border-radius:18px;background:transparent;color:var(--ink);display:flex;align-items:center;justify-content:space-between;padding:3px 0;font-size:.78rem;cursor:pointer}.guest-picker-button b{font-weight:300}.guest-picker-button i{font-style:normal;color:#0f9f98}.guest-popover{width:172px;padding:8px}.guest-option{width:100%;height:42px;border-radius:16px;text-align:left;padding:0 14px;font-size:.78rem}.guest-option:hover,.guest-option.is-selected{background:rgba(28,188,179,.14);color:#08777a}@media(max-width:900px){.booking-bar.mobile-open .date-field:after{right:16px;transform:translateY(-6%)}}@media(max-width:560px){.date-popover{width:calc(100% - 36px);max-width:330px}.booking-bar .date-field:after{width:21px;height:21px}.guest-picker-button{font-size:.86rem}}
@media(max-width:560px){.hero{min-height:max(920px,108svh)}.hero-copy{transform:translateY(30px)}}
