:root{--ink:#132b2b;--deep:#0c3436;--sea:#0d6c70;--foam:#f3f5ee;--white:#fff;--sun:#f5cc62;--coral:#ef6d54;--line:rgba(19,43,43,.16);--serif:"Newsreader",Georgia,serif;--sans:"DM Sans",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--foam);font:16px/1.55 var(--sans);overflow-x:hidden}button,input,select{font:inherit}button,a{color:inherit}.demo-bar{height:30px;background:var(--sun);display:flex;align-items:center;justify-content:center;gap:10px;font-size:.72rem;letter-spacing:.03em}.demo-bar span{text-transform:uppercase;font-weight:700;letter-spacing:.13em}.site-header{height:82px;padding:0 clamp(20px,4vw,64px);display:flex;align-items:center;justify-content:space-between;background:var(--foam);position:relative;z-index:20}.brand{display:flex;align-items:center;gap:12px;font-weight:600;text-decoration:none;letter-spacing:-.02em}.brand em{font:italic 1em var(--serif)}.brand-mark{width:37px;height:37px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;font:500 .8rem var(--serif)}.site-header nav{display:flex;gap:34px}.site-header nav a{text-decoration:none;font-size:.84rem}.text-button,.menu-button{border:0;background:none;font-weight:600;cursor:pointer}.text-button span{margin-left:6px}.menu-button{display:none}.hero{height:calc(100vh - 112px);min-height:650px;position:relative;color:white;margin:0 clamp(12px,2vw,30px);overflow:hidden;border-radius:2px}.hero-image{position:absolute;width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,31,32,.68),rgba(5,31,32,.06) 70%),linear-gradient(0deg,rgba(5,31,32,.35),transparent 45%)}.hero-copy{position:absolute;left:clamp(28px,6vw,92px);top:clamp(90px,18vh,170px);max-width:700px}.eyebrow{text-transform:uppercase;font-size:.72rem;letter-spacing:.19em;font-weight:700;margin:0 0 20px}.eyebrow.light{color:rgba(255,255,255,.78)}h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.035em;line-height:.93;margin:0}h1{font-size:clamp(4rem,8vw,8.5rem)}.hero-copy>p:last-child{max-width:480px;font-size:1.08rem;color:rgba(255,255,255,.82);margin-top:28px}.search-card{position:absolute;bottom:0;left:0;right:0;margin:0 auto;background:white;color:var(--ink);width:min(1060px,calc(100% - 56px));padding:14px;display:grid;grid-template-columns:1fr 1fr .8fr auto;box-shadow:0 22px 60px rgba(3,29,30,.28)}.search-card label{padding:7px 22px;border-right:1px solid var(--line)}.search-card label span{display:block;text-transform:uppercase;font-size:.66rem;letter-spacing:.14em;font-weight:700;margin-bottom:5px}.search-card input,.search-card select{border:0;background:transparent;width:100%;color:var(--ink);outline:none}.search-card button,.footer-top button{background:var(--coral);color:white;border:0;padding:0 28px;font-weight:700;cursor:pointer}.search-card button span,.footer-top button span{margin-left:16px}.intro{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding:140px clamp(24px,8vw,130px) 75px;align-items:end}.intro h2,.services h2,.availability-story h2{font-size:clamp(3rem,5vw,5.5rem)}.intro>p{max-width:520px;color:#4d6361;font-size:1.05rem;margin:0 0 7px}.property-grid{padding:0 clamp(20px,4vw,64px) 40px;display:grid;grid-template-columns:repeat(12,1fr);gap:24px}.property-card{grid-column:span 4;cursor:pointer;position:relative}.property-card:nth-child(1),.property-card:nth-child(5){grid-column:span 7}.property-card:nth-child(2),.property-card:nth-child(4){grid-column:span 5}.property-card figure{margin:0;height:clamp(310px,35vw,520px);overflow:hidden;background:#d8ddd6;position:relative}.property-card:nth-child(3) figure{height:440px}.property-card img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}.property-card:hover img{transform:scale(1.025)}.property-card .badge{position:absolute;top:14px;left:14px;background:rgba(255,255,255,.9);padding:7px 10px;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em}.property-meta{display:flex;justify-content:space-between;gap:16px;padding:18px 2px 34px}.property-meta h3{font:400 1.75rem var(--serif);margin:0}.property-meta p{margin:3px 0 0;color:#667674;font-size:.84rem}.property-price{text-align:right;white-space:nowrap;font-weight:600}.property-price small{display:block;font-weight:400;color:#667674}.results-note{text-align:center;min-height:28px;font-size:.9rem;color:var(--sea);font-weight:600}.island-section{margin-top:90px;min-height:680px;background:var(--deep);color:white;padding:100px clamp(24px,8vw,130px);display:grid;grid-template-columns:1.2fr 1fr;gap:10vw;align-items:center;position:relative;overflow:hidden}.island-section:after{content:"";position:absolute;width:480px;height:480px;border:1px solid rgba(255,255,255,.12);border-radius:50%;right:-120px;top:-180px;box-shadow:0 0 0 80px rgba(255,255,255,.025),0 0 0 160px rgba(255,255,255,.02)}.island-copy h2{font-size:clamp(3.5rem,6.5vw,7rem)}.island-copy>p:not(.eyebrow){max-width:540px;color:rgba(255,255,255,.68);margin:30px 0}.underlink{text-decoration:none;border-bottom:1px solid rgba(255,255,255,.5);padding-bottom:7px}.underlink span{margin-left:12px}.island-facts{position:relative;z-index:1}.island-facts div{display:flex;align-items:center;gap:30px;padding:25px 0;border-bottom:1px solid rgba(255,255,255,.16)}.island-facts strong{font:400 3.3rem var(--serif);width:115px}.island-facts span{color:rgba(255,255,255,.68)}.services{padding:140px clamp(24px,8vw,130px)}.services-heading{display:grid;grid-template-columns:1fr 2fr;align-items:start}.service-list{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:90px}.service-list article{border-top:1px solid var(--line);padding-top:24px}.service-list span{color:var(--coral);font-size:.75rem;font-weight:700}.service-list h3{font:400 1.7rem var(--serif);margin:45px 0 12px}.service-list p{color:#667674;max-width:310px}.availability-story{padding:110px clamp(24px,8vw,130px);background:#e3e8df;display:grid;grid-template-columns:1fr 1fr;gap:10vw;align-items:center}.availability-story>div:last-child>p:not(.eyebrow){color:#596b69}.sync-visual{display:flex;align-items:center}.channel{width:105px;height:105px;border-radius:50%;background:white;display:grid;place-items:center;font:500 2rem var(--serif);box-shadow:0 15px 50px rgba(12,52,54,.08)}.channel span{display:block;position:absolute;margin-top:140px;font:600 .75rem var(--sans)}.channel.center{background:var(--deep);color:white;transform:scale(1.18)}.sync-line{height:1px;background:#9db0aa;flex:1;position:relative}.sync-line:after{content:"";position:absolute;width:7px;height:7px;border-radius:50%;background:var(--coral);top:-3px;animation:travel 2.2s infinite ease-in-out}@keyframes travel{0%{left:0}50%{left:calc(100% - 7px)}100%{left:0}}.live-status{margin-top:28px;font-size:.82rem;font-weight:600}.live-status i,.sync-pill i{display:inline-block;width:8px;height:8px;background:#28a66a;border-radius:50%;margin-right:8px;box-shadow:0 0 0 4px rgba(40,166,106,.12)}footer{background:#071f20;color:white;padding:90px clamp(24px,5vw,80px) 30px}.footer-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:70px}.footer-brand{font-size:1.3rem}.footer-top p{color:rgba(255,255,255,.6)}.footer-top button{height:58px}.footer-bottom{border-top:1px solid rgba(255,255,255,.13);padding-top:22px;display:flex;justify-content:space-between;color:rgba(255,255,255,.5);font-size:.72rem}dialog{border:0;padding:0;max-width:none;background:white;color:var(--ink)}dialog::backdrop{background:rgba(3,20,21,.72);backdrop-filter:blur(5px)}.property-dialog{width:min(1100px,94vw);max-height:92vh}.dialog-close{position:absolute;right:18px;top:18px;border:0;background:white;width:42px;height:42px;border-radius:50%;font-size:1.6rem;cursor:pointer;z-index:4;box-shadow:0 5px 20px rgba(0,0,0,.12)}.detail-hero{height:430px;position:relative}.detail-hero img{width:100%;height:100%;object-fit:cover}.detail-hero .dialog-close{position:absolute}.detail-body{padding:42px 48px 48px;display:grid;grid-template-columns:1.5fr 1fr;gap:50px}.detail-body h2{font-size:3.8rem}.detail-body .lead{font-size:1.05rem;color:#5d6d6b}.amenities{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:28px 0}.amenities span{border-top:1px solid var(--line);padding:12px 0;font-size:.85rem}.book-box{border:1px solid var(--line);padding:24px;align-self:start}.book-box .rate{font:500 2rem var(--serif)}.book-box small{color:#667674}.book-box button{width:100%;height:54px;border:0;background:var(--coral);color:white;font-weight:700;margin-top:20px;cursor:pointer}.calendar-mini{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-top:18px}.calendar-mini span{text-align:center;padding:6px 2px;font-size:.7rem}.calendar-mini .day{background:#e8eee7}.calendar-mini .blocked{background:#f0d9d2;text-decoration:line-through;color:#9a6d64}.calendar-mini .head{font-weight:700;background:none}.booking-dialog{width:min(560px,94vw);max-height:94vh}.booking-wrap{padding:38px}.booking-wrap h2{font-size:2.8rem}.stepper{display:flex;gap:8px;margin:20px 0 28px}.stepper i{height:4px;flex:1;background:#dce1dc}.stepper i.active{background:var(--coral)}.booking-summary{display:flex;gap:14px;background:#edf0eb;padding:12px;margin:18px 0}.booking-summary img{width:88px;height:70px;object-fit:cover}.booking-summary h3{margin:4px 0;font:500 1.3rem var(--serif)}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field-grid label,.full-field{display:block}.field-grid span,.full-field span{display:block;font-size:.73rem;font-weight:700;margin-bottom:5px}.field-grid input,.full-field input{width:100%;padding:12px;border:1px solid var(--line);background:white}.full-field{margin-top:12px}.price-lines{margin:20px 0}.price-lines div{display:flex;justify-content:space-between;padding:7px 0}.price-lines .total{border-top:1px solid var(--line);margin-top:8px;padding-top:14px;font-weight:700}.booking-actions{display:flex;gap:10px;margin-top:22px}.booking-actions button{height:52px;border:0;padding:0 20px;font-weight:700;cursor:pointer}.booking-actions .primary{background:var(--coral);color:white;flex:1}.booking-actions .secondary{background:#e5e9e4}.payment-shell{border:1px solid var(--line);padding:18px;margin-top:18px}.payment-methods{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.cards{letter-spacing:.12em;font-weight:700;color:#4c5f5d}.secure-note{font-size:.72rem;color:#668}.demo-stop{background:#fff2cb;border:1px solid #ead178;padding:14px;margin:16px 0 0;font-size:.8rem}.owner-dialog{width:min(1250px,96vw);height:min(820px,94vh);background:#eff2ee}.portal-shell{display:grid;grid-template-columns:220px 1fr;height:100%;position:relative}.portal-shell aside{background:var(--deep);color:white;padding:28px 22px;display:flex;flex-direction:column}.portal-shell aside nav{margin-top:70px;display:grid;gap:7px}.portal-shell aside nav button{border:0;background:transparent;color:rgba(255,255,255,.62);text-align:left;padding:11px 13px;cursor:pointer}.portal-shell aside nav button.active{background:rgba(255,255,255,.1);color:white}.portal-shell aside small{margin-top:auto;color:rgba(255,255,255,.4)}.portal-main{padding:44px;overflow:auto}.portal-head{display:flex;justify-content:space-between;align-items:start}.portal-head h2{font-size:3rem}.portal-head button{border:0;background:var(--coral);color:white;padding:12px 18px;font-weight:700;cursor:pointer}.metric-row{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:35px 0}.metric-row article,.portal-card{background:white;padding:22px}.metric-row span{font-size:.76rem;color:#6c7b79}.metric-row strong{display:block;font:500 2.6rem var(--serif);margin:12px 0}.metric-row small{font-size:.72rem;color:#6c7b79}.healthy{color:#16875a}.portal-card-head{display:flex;justify-content:space-between;align-items:start}.portal-card h3{margin:0;font:500 1.6rem var(--serif)}.portal-card p{margin:3px 0;color:#6c7b79;font-size:.8rem}.sync-pill{font-size:.72rem;background:#e6f4eb;padding:7px 10px;border-radius:20px}.channel-row{display:grid;grid-template-columns:1.3fr .8fr .8fr auto;gap:15px;align-items:center;padding:17px 0;border-top:1px solid var(--line);font-size:.8rem}.channel-row:first-child{margin-top:20px}.channel-row strong{font-size:.9rem}.channel-row .connected{color:#16875a}.channel-row button{border:1px solid var(--line);background:white;padding:7px 10px;cursor:pointer}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,30px);background:var(--deep);color:white;padding:12px 20px;opacity:0;transition:.25s;z-index:100;border-radius:2px;font-size:.85rem;pointer-events:none}#toast.show{opacity:1;transform:translate(-50%,0)}@media(max-width:850px){.site-header nav,.site-header .text-button{display:none}.menu-button{display:block}.hero{min-height:670px}.search-card{grid-template-columns:1fr 1fr;width:calc(100% - 24px)}.search-card label:nth-child(3){border-top:1px solid var(--line)}.search-card button{min-height:66px}.intro,.island-section,.availability-story{grid-template-columns:1fr}.intro{padding-top:100px}.property-card,.property-card:nth-child(n){grid-column:span 12}.property-card figure,.property-card:nth-child(3) figure{height:65vw;min-height:330px}.services-heading{grid-template-columns:1fr}.service-list{grid-template-columns:1fr;margin-top:50px}.service-list h3{margin-top:20px}.sync-visual{margin:40px 0 70px}.footer-top{align-items:flex-start;gap:25px;flex-direction:column}.footer-bottom{flex-direction:column;gap:8px}.detail-body{grid-template-columns:1fr;padding:30px}.portal-shell{grid-template-columns:1fr}.portal-shell aside{display:none}.portal-main{padding:25px}.metric-row{grid-template-columns:1fr}.channel-row{grid-template-columns:1fr 1fr}.owner-dialog{height:94vh}}@media(max-width:540px){.demo-bar{height:auto;min-height:34px;padding:5px 10px;text-align:center}.demo-bar span{display:none}.site-header{height:70px}.hero{margin:0;height:720px}.hero-copy{top:80px}.hero-copy h1{font-size:3.7rem}.search-card{grid-template-columns:1fr;bottom:12px}.search-card label{border-right:0;border-bottom:1px solid var(--line);padding:7px 14px}.search-card label:nth-child(3){border-top:0}.intro{grid-template-columns:1fr;padding:85px 22px 55px}.intro h2,.services h2,.availability-story h2{font-size:3.1rem}.property-grid{padding:0 14px}.island-section,.services,.availability-story{padding:80px 24px}.island-facts strong{font-size:2.5rem;width:85px}.channel{width:75px;height:75px}.field-grid{grid-template-columns:1fr}.booking-wrap{padding:28px 20px}.detail-hero{height:270px}.detail-body h2{font-size:3rem}}
