:root{font-family:Manrope,Arial,sans-serif;color:#123630;background:#f3f1e9;font-synthesis:none;--green:#0e5148;--deep:#073936;--blue:#1c6672;--cream:#f3f1e9;--sand:#d7c89e;--orange:#ee8d52}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}.container{width:min(1180px,calc(100% - 40px));margin:auto}.section{padding:110px 0}.eyebrow{text-transform:uppercase;letter-spacing:.17em;font-size:11px;font-weight:700;color:#39746b}.eyebrow.light{color:#a9d5ca}.button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;padding:14px 22px;font-weight:700;cursor:pointer;transition:.2s}.button:disabled{opacity:.55;cursor:not-allowed}.button.primary{background:var(--green);color:#fff}.button.accent{background:var(--orange);color:#173d37}.button.ghost{background:transparent;border:1px solid #aac2ba;color:var(--green)}.button.danger{background:#f7e2dc;color:#933821}.button.confirm{background:#d9eee5;color:#175d42}.button.ghost-light{background:transparent;border:1px solid #7eaaa3;color:#fff}.button.wide{width:100%}.brand{display:flex;align-items:center;gap:10px;font-weight:700}.brand span{display:grid;place-items:center;width:38px;height:38px;border:1px solid currentColor;border-radius:50%;font-family:Prata,serif;font-size:13px}.hero{position:relative;min-height:850px;color:#f4f5ed;background:radial-gradient(circle at 75% 25%,#347c7a 0,transparent 28%),linear-gradient(135deg,#073936,#0e5148 52%,#1c6672);overflow:hidden}.nav{height:88px;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:3}.nav-links{display:flex;gap:34px;font-size:14px}.nav-button{background:#ffffff1f;color:#fff;border:1px solid rgba(255,255,255,.4)}.hero-content{position:relative;z-index:2;padding-top:120px}.hero h1,.intro h2,.booking-copy h2,.amenities h2,.contacts h2{font:400 clamp(48px,7vw,96px)/1.02 Prata,serif;margin:18px 0 28px;letter-spacing:-.03em}.hero h1 em{color:#a5d8ca;font-style:italic}.hero-content>p{max-width:590px;font-size:19px;line-height:1.7;color:#c9dfd9}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:36px}.text-link{border-bottom:1px solid currentColor;padding-bottom:4px}.text-link.dark{color:var(--green);margin-left:20px}.hero-media{position:absolute;width:480px;height:550px;right:4vw;top:210px;border-radius:240px 240px 24px 24px;border:1px solid rgba(255,255,255,.35);background:linear-gradient(160deg,#ffffff1f,#0000002e),repeating-linear-gradient(100deg,transparent 0 30px,rgba(255,255,255,.03) 31px 32px);display:grid;place-items:center;color:#c4dfd8;text-align:center;padding:60px}.river-line{position:absolute;left:-5%;right:-5%;bottom:-120px;height:250px;border-radius:50%;border-top:1px solid rgba(255,255,255,.35);transform:rotate(-3deg)}.intro{display:grid;grid-template-columns:1.1fr .9fr;gap:100px;align-items:end}.intro h2,.contacts h2{font-size:50px}.lead{font-size:18px;line-height:1.9;color:#506962}.gallery{display:grid;grid-template-columns:1.25fr .75fr;gap:20px;height:620px}.media-stack{display:grid;gap:20px}.media-card{position:relative;border-radius:180px 20px 20px;overflow:hidden;background:radial-gradient(circle at 40% 30%,#76aaa2,transparent 25%),linear-gradient(150deg,#174f4a,#67968d);display:grid;place-items:center;color:#fff}.media-card:after{content:"";position:absolute;inset:20px;border:1px solid rgba(255,255,255,.25);border-radius:inherit}.media-card span{z-index:1;background:#073936b8;padding:10px 16px;border-radius:99px;font-size:13px}.media-card.water{border-radius:20px;background:linear-gradient(160deg,#6ba6aa,#1b6571)}.media-card.bath{border-radius:20px 20px 150px;background:linear-gradient(140deg,#8d6a45,#264f47)}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.features article{border-top:1px solid #aabdb5;padding-top:24px}.features article>span{font-family:Prata;color:#789b93}.features h3{font:28px Prata;margin:50px 0 15px}.features p{line-height:1.8;color:#587069}.amenities{background:var(--deep);color:#fff}.amenities-inner{display:grid;grid-template-columns:1fr 1fr;gap:100px}.amenities h2{font-size:54px}.amenities ul{display:grid;grid-template-columns:1fr 1fr;gap:0 25px;list-style:none;margin:0;padding:0}.amenities li{border-bottom:1px solid #47756f;padding:18px 0;color:#d7e8e4}.amenities li:before{content:"✓";color:#81c8b7;margin-right:12px}.price{display:grid;grid-template-columns:1fr auto;gap:100px;align-items:center}.price h2{font:52px Prata;margin:15px 0}.price p{max-width:660px;line-height:1.8;color:#587069}.quote{background:#e2ddc9;border-radius:160px 160px 24px 24px;padding:75px 60px;display:grid;gap:8px;min-width:300px}.quote span{color:#6a7a73;font-size:12px;text-transform:uppercase;letter-spacing:.15em}.quote strong{font:22px Prata;margin-bottom:22px}.booking{background:linear-gradient(140deg,#0e5148,#1c6672);color:#fff}.booking-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:start}.booking-copy{position:sticky;top:40px}.booking-copy h2{font-size:52px}.booking-copy p{line-height:1.8;color:#c5ded9}.booking-form,.success-card{background:var(--cream);color:#153e37;border-radius:28px;padding:42px}.form-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:28px}.form-heading h2{font:34px Prata;margin:8px 0 0}.form-heading>strong{font:25px Prata;color:var(--green)}label{display:grid;gap:8px;font-size:13px;font-weight:700;color:#48635d}input,select,textarea{width:100%;border:1px solid #c9d4cf;background:#fff;border-radius:12px;padding:13px 14px;color:#153e37;outline:none}input:focus,select:focus,textarea:focus{border-color:#438d7e;box-shadow:0 0 0 3px #438d7e1f}.field-grid{display:grid;gap:16px;margin-bottom:18px}.field-grid.two{grid-template-columns:1fr 1fr}.field-grid.three{grid-template-columns:repeat(3,1fr)}.form-note{font-size:12px;color:#6c817b;margin:-8px 0 22px}.check-row,.consent{display:flex;align-items:center;gap:10px;margin:20px 0}.check-row input,.consent input{width:18px;height:18px}.check-row small{margin-left:auto;color:#6c817b}.nested-fields{background:#e8ece3;border-radius:16px;padding:16px}.consent{align-items:flex-start;font-weight:500;line-height:1.5}.error{color:#a83c29;background:#fae9e4;padding:12px;border-radius:10px}.busy-note{font-size:11px;color:#758780;margin-top:20px;display:flex;gap:7px;flex-wrap:wrap}.busy-note span{background:#e4e7dc;padding:4px 7px;border-radius:5px}.success-card h3{font:42px Prata;margin:12px 0}.success-card p{line-height:1.7}.success-card .button{margin:10px 7px 0 0}.contacts{display:grid;grid-template-columns:1fr 1fr;gap:100px}.contact-card{display:grid;gap:18px;border-left:1px solid #9db4ac;padding-left:60px;align-content:start}.contact-card a{font:22px Prata;color:var(--green)}.contact-card p{line-height:1.7}.contact-card small{color:#788a83}footer{background:#072e2c;color:#cce0dc;padding:50px 0}footer .container{display:flex;align-items:center;gap:30px}footer .container>p{margin-right:auto}.light-brand{color:#fff}.plain-page{min-height:100vh;padding:40px;background:linear-gradient(140deg,#e9ede3,#c5ded8)}.manage-card{width:min(700px,100%);margin:90px auto;background:#fff;border-radius:28px;padding:50px}.manage-card h1{font:42px Prata}.booking-summary{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:35px 0}.booking-summary div{padding:17px;border-radius:12px;background:#f2f4ef;display:grid;gap:6px}.booking-summary span{font-size:11px;text-transform:uppercase;color:#6d817b}.status-pill,.status-dot{display:inline-flex;width:max-content;border-radius:50px;background:#e7e8e0;color:#59665f;padding:7px 11px;font-size:11px;font-style:normal}.status-pill[data-status=confirmed],.status-dot[data-status=confirmed]{background:#d7eee5;color:#176044}.status-pill[data-status=pending],.status-dot[data-status=pending]{background:#fff0cf;color:#8a5b08}.status-pill[data-status^=cancelled],.status-dot[data-status^=cancelled]{background:#f6dfda;color:#923d2a}.admin-page{min-height:100vh;background:#eef1ec}.admin-header{height:76px;background:var(--deep);padding:0 28px;display:flex;justify-content:space-between;align-items:center}.admin-shell{display:grid;grid-template-columns:430px 1fr;height:calc(100vh - 76px)}.booking-list{overflow-y:auto;background:#fff;border-right:1px solid #dce3df}.list-title{padding:28px;display:flex;justify-content:space-between;align-items:end;position:sticky;top:0;background:#fff;z-index:2}.list-title h1{font:34px Prata;margin:5px 0 0}.list-title select{width:auto}.booking-row{width:100%;border:0;border-top:1px solid #edf0ed;background:#fff;padding:18px 28px;text-align:left;display:flex;justify-content:space-between;cursor:pointer}.booking-row:hover,.booking-row.active{background:#eef6f1}.booking-row>span{display:grid;gap:7px}.booking-row>span:last-child{justify-items:end}.booking-row small{color:#73837e}.booking-editor{padding:40px;overflow-y:auto}.booking-editor form{max-width:760px;margin:auto;background:#fff;border-radius:22px;padding:35px}.editor-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.editor-heading h2{font:32px Prata;margin:8px 0}.editor-heading>strong{font:25px Prata}.editor-actions{display:flex;gap:10px;margin-top:24px}.empty,.empty-state{text-align:center;color:#75847f;padding:40px}.empty-state{margin-top:20vh}.empty-state span{font-size:40px}.admin-login{width:min(440px,calc(100% - 32px));margin:10vh auto;background:#fff;border-radius:22px;padding:38px;display:grid;gap:18px}.admin-login .brand{margin-bottom:24px}.admin-login h1{font:38px Prata;margin:0}@media(max-width:900px){.nav-links{display:none}.hero{min-height:780px}.hero-media{width:330px;height:390px;right:-90px;top:330px;opacity:.65}.hero-content{padding-top:100px}.intro,.amenities-inner,.price,.booking-layout,.contacts{grid-template-columns:1fr;gap:50px}.gallery{height:500px}.features{grid-template-columns:1fr}.booking-copy{position:static}.admin-shell{grid-template-columns:1fr;height:auto}.booking-list{max-height:45vh;border-right:0}.booking-editor{padding:20px}.admin-page{min-height:100vh}.field-grid.three{grid-template-columns:1fr 1fr}}@media(max-width:600px){.container{width:min(100% - 28px,1180px)}.section{padding:75px 0}.hero{min-height:720px}.nav{height:70px}.nav-button{display:none}.hero-content{padding-top:80px}.hero h1{font-size:49px}.hero-content>p{font-size:16px;max-width:90%}.hero-media{top:400px}.hero-actions{align-items:flex-start;flex-direction:column;gap:20px}.intro h2,.amenities h2,.booking-copy h2,.contacts h2,.price h2{font-size:38px}.intro{gap:28px}.gallery{grid-template-columns:1fr;height:680px}.media-stack{grid-template-rows:1fr 1fr}.features h3{margin-top:28px}.amenities ul{grid-template-columns:1fr}.quote{min-width:0}.booking-form,.success-card{padding:25px;border-radius:20px}.form-heading{align-items:start;gap:20px}.form-heading>strong{font-size:18px}.field-grid.two,.field-grid.three,.booking-summary{grid-template-columns:1fr}.contacts{gap:25px}.contact-card{padding-left:25px}footer .container{align-items:flex-start;flex-direction:column}footer .container>p{margin:0}.plain-page{padding:20px}.manage-card{margin:50px auto;padding:28px}.manage-card h1{font-size:32px}.admin-header{padding:0 16px}.booking-row{padding:16px}.booking-editor form{padding:24px}.editor-actions{flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}:root{--serif:Georgia,"Times New Roman",serif;--shadow:0 20px 60px rgba(7,57,54,.12)}*:focus-visible{outline:3px solid rgba(238,141,82,.7);outline-offset:3px}.button{gap:10px;box-shadow:0 0 #07393600;will-change:transform,box-shadow}.button:hover{transform:translateY(-2px);box-shadow:0 12px 28px #0739362e}.button:active{transform:translateY(1px) scale(.98);box-shadow:none}.button.subtle{background:#edf1ec;color:#31544d}.nav-links a{position:relative;padding:10px 0}.nav-links a:after{content:"";position:absolute;left:0;right:100%;bottom:4px;height:1px;background:currentColor;transition:right .25s}.nav-links a:hover:after{right:0}.text-link{transition:color .2s,opacity .2s}.text-link:hover{opacity:.7}.reveal{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .75s ease}.reveal.revealed{opacity:1;transform:none}.hero-facts{display:flex;gap:38px;margin-top:76px}.hero-facts span{display:grid;gap:4px;color:#bcd7d1;font-size:12px}.hero-facts strong{color:#fff;font:18px var(--serif)}.hero-media{transition:transform .5s ease,border-color .5s}.media-interactive{cursor:pointer}.media-interactive i{position:absolute;bottom:32px;font-style:normal;font-size:11px;letter-spacing:.12em;text-transform:uppercase;opacity:0;transform:translateY(8px);transition:.3s;z-index:2}.media-interactive:hover{transform:translateY(-7px) rotate(.3deg);border-color:#ffffffb3}.media-interactive:hover i{opacity:.8;transform:none}.gallery .media-card{border:0}.gallery .media-card:hover:after{inset:13px}.media-card:after{transition:inset .35s}.features article{position:relative;padding:24px 20px 28px;transition:transform .25s,background .25s,box-shadow .25s}.features article>i{position:absolute;right:20px;top:24px;font-style:normal;opacity:0;transition:.25s}.features article:hover,.features article:focus{transform:translateY(-8px);background:#e9ede3;box-shadow:var(--shadow)}.features article:hover>i,.features article:focus>i{opacity:1}.amenities-title{display:grid;grid-template-columns:1fr .75fr;gap:100px;align-items:end;margin-bottom:70px}.amenities-title p{line-height:1.8;color:#b9d0ca}.amenity-columns{display:grid;grid-template-columns:1fr 1fr;gap:80px}.amenity-columns>div{border-top:1px solid #47756f;padding-top:24px}.amenity-number{color:#7fb5a8;font:18px var(--serif)}.amenity-columns h3{font:34px var(--serif);margin:25px 0}.amenity-columns ul{grid-template-columns:1fr}.experience{display:grid;grid-template-columns:1fr 1fr;gap:22px}.experience-card{min-height:520px;border-radius:28px;padding:50px;color:#fff;display:flex;flex-direction:column;align-items:flex-start;position:relative;overflow:hidden;transition:transform .3s,box-shadow .3s}.experience-card:after{content:"";position:absolute;width:300px;height:300px;border:1px solid rgba(255,255,255,.18);border-radius:50%;right:-70px;bottom:-90px;transition:transform .6s}.experience-card:hover{transform:translateY(-8px);box-shadow:var(--shadow)}.experience-card:hover:after{transform:scale(1.18)}.bath-experience{background:linear-gradient(145deg,#76533a,#274c45)}.sup-experience{background:linear-gradient(145deg,#1b6571,#659c9b)}.experience-card h2{font:52px/1.05 var(--serif);margin:22px 0}.experience-card p{max-width:420px;line-height:1.75;color:#d5e3df}.experience-card a{margin-top:auto;border-bottom:1px solid currentColor;padding-bottom:4px;z-index:1}.rule-chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:25px}.rule-chips span{background:#e3e7dd;border-radius:99px;padding:9px 13px;font-size:12px}.quote small{line-height:1.5;color:#60716a}.teaser-content{display:grid;grid-template-columns:1fr auto;align-items:center;gap:80px}.teaser-content h2{font:52px var(--serif);margin:18px 0}.teaser-content p{max-width:650px;color:#c5ded9;line-height:1.8}.large-cta{width:220px;height:220px;border-radius:50%;display:flex;flex-direction:column;font-size:16px}.large-cta i{font-size:28px;font-style:normal}.large-cta:hover{transform:rotate(-4deg) scale(1.04)}.faq{display:grid;grid-template-columns:.7fr 1.3fr;gap:90px}.faq h2{font:48px var(--serif)}.faq-list details{border-top:1px solid #adbbb5;padding:22px 0}.faq-list details:last-child{border-bottom:1px solid #adbbb5}.faq-list summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer;font:21px var(--serif);list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font:28px Arial;transition:transform .25s}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list p{color:#587069;line-height:1.75;padding-right:50px}.avito-link{transition:transform .2s}.avito-link:hover{transform:translate(6px)}.mobile-booking-cta{display:none}.booking-page{min-height:100vh;background:#eef1e9}.booking-page-header{height:88px;display:flex;align-items:center;justify-content:space-between}.close-link{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#fff;font-size:27px;transition:.2s}.close-link:hover{transform:rotate(8deg);box-shadow:var(--shadow)}.booking-wizard{display:grid;grid-template-columns:360px 1fr;min-height:calc(100vh - 120px);padding-bottom:32px}.wizard-aside{background:linear-gradient(145deg,#073936,#17635b);color:#fff;border-radius:28px 0 0 28px;padding:50px 42px;display:flex;flex-direction:column}.wizard-aside h1{font:46px/1.08 var(--serif);margin:20px 0 55px}.wizard-progress{display:grid;gap:0;list-style:none;padding:0;margin:0}.wizard-progress li{position:relative;padding-bottom:26px}.wizard-progress li:not(:last-child):before{content:"";position:absolute;left:17px;top:35px;bottom:0;width:1px;background:#47766f}.wizard-progress li.done:before{background:#9fd0c4}.wizard-progress button{display:flex;align-items:center;gap:14px;border:0;background:none;color:#8eb5ad;padding:0;cursor:pointer}.wizard-progress button:disabled{cursor:default}.wizard-progress button span{display:grid;place-items:center;width:35px;height:35px;border:1px solid #679088;border-radius:50%;transition:.25s}.wizard-progress li.active button{color:#fff}.wizard-progress li.active button span{background:var(--orange);border-color:var(--orange);color:#173d37;box-shadow:0 0 0 6px #ee8d521f}.wizard-progress li.done button{color:#c3ddd7}.wizard-progress li.done button span{background:#467b70;color:#fff}.wizard-help{margin-top:auto;display:grid;gap:5px;border-top:1px solid #47766f;padding-top:24px}.wizard-help span,.wizard-help small{font-size:11px;color:#92b9b0}.wizard-panel{background:#fff;border-radius:0 28px 28px 0;padding:55px 64px;min-width:0}.wizard-step{max-width:760px;margin:auto}.step-count{font-size:11px;color:#73877f;text-transform:uppercase;letter-spacing:.13em}.wizard-step h2{font:42px var(--serif);margin:12px 0}.step-lead{color:#657a73;line-height:1.7;margin:0 0 28px}.step-enter-active,.step-leave-active{transition:opacity .22s,transform .22s}.step-enter-from{opacity:0;transform:translate(18px)}.step-leave-to{opacity:0;transform:translate(-12px)}.calendar-loading{height:430px;display:grid;place-items:center;background:#f4f5f1;border-radius:20px;color:#73877f}.availability-calendar{border:1px solid #dce3de;border-radius:20px;padding:20px}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.calendar-toolbar strong{text-transform:capitalize;font:21px var(--serif)}.icon-button{width:40px;height:40px;border:1px solid #d2ddd7;background:#fff;border-radius:50%;cursor:pointer;color:#31544d;transition:.2s}.icon-button:hover{background:#dfeee8;transform:translateY(-2px)}.icon-button:active{transform:scale(.94)}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.weekday{text-align:center;color:#8a9994;font-size:10px;text-transform:uppercase;padding:8px}.calendar-day{aspect-ratio:1;border:0;border-radius:12px;background:#f5f6f2;color:#264b44;cursor:pointer;position:relative;transition:.18s}.calendar-day:hover:not(:disabled){background:#dcece6;transform:translateY(-2px)}.calendar-day:active:not(:disabled){transform:scale(.93)}.calendar-day.muted{color:#aab5b0;background:#fafaf8}.calendar-day.past{opacity:.35;cursor:not-allowed}.calendar-day.occupied:not(.selected){background:#f1e4df;color:#a48075;text-decoration:line-through}.calendar-day.occupied i{position:absolute;width:4px;height:4px;border-radius:50%;background:#c37762;bottom:7px;left:calc(50% - 2px)}.calendar-day.in-range{background:#dceee7;border-radius:4px}.calendar-day.selected{background:var(--green);color:#fff;box-shadow:0 7px 18px #0e514838}.calendar-legend{display:flex;gap:22px;margin-top:17px;color:#71847d;font-size:11px}.calendar-legend span{display:flex;align-items:center;gap:7px}.calendar-legend i{width:10px;height:10px;border-radius:3px}.calendar-legend .available{background:#f0f3ef}.calendar-legend .busy{background:#ead4cc}.calendar-legend .chosen{background:var(--green)}.date-selection{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:15px;margin:20px 0}.date-selection div{display:grid;gap:5px;background:#f0f3ef;padding:14px;border-radius:13px}.date-selection span{font-size:10px;color:#758780;text-transform:uppercase}.date-selection strong{font-size:13px}.date-selection>i{font-style:normal}.wizard-next{margin-left:auto;min-width:190px}.wizard-actions{display:flex;justify-content:space-between;align-items:center;margin-top:26px}.choice-block{margin:30px 0}.choice-label{display:block;font-size:12px;font-weight:700;color:#657a73;margin-bottom:10px}.guest-options{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.guest-options button{border:1px solid #d6dfda;background:#fff;border-radius:16px;padding:18px;display:grid;gap:4px;cursor:pointer;color:#365950;transition:.2s}.guest-options button:hover{transform:translateY(-3px);border-color:#8bb4a9}.guest-options button.selected{background:#dceee7;border-color:var(--green);box-shadow:0 8px 20px #0e51481a}.guest-options strong{font:28px var(--serif)}.guest-options small{color:#71847d}.extra-options{display:grid;gap:12px}.extra-card{width:100%;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;text-align:left;border:1px solid #d7dfdb;border-radius:17px;background:#fff;padding:18px;cursor:pointer;color:#31544d;transition:.2s}.extra-card:hover{border-color:#73a295;transform:translateY(-2px);box-shadow:0 10px 25px #07393614}.extra-card.selected{background:#e7f1eb;border-color:#4e8d7d}.extra-card>span:nth-child(2){display:grid;gap:5px}.extra-card small{color:#71847d}.extra-card>i{display:grid;place-items:center;width:30px;height:30px;background:#edf1ed;border-radius:50%;font-style:normal}.extra-card.selected>i{background:var(--green);color:#fff}.extra-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:13px;background:#eef2ec;font-size:25px}.extra-details{margin:-3px 0 6px 64px;background:#f4f6f2;border-radius:15px;padding:17px;display:grid;grid-template-columns:1fr 1fr;gap:15px}.stepper-control{display:flex;align-items:center;justify-content:space-between;gap:20px}.stepper-control>div:first-child{display:grid;gap:4px}.stepper-control small{color:#76877f}.stepper-buttons{display:flex;align-items:center;gap:12px}.stepper-buttons button{width:36px;height:36px;border:1px solid #cbd8d2;border-radius:50%;background:#fff;cursor:pointer;font-size:20px;color:#31544d;transition:.15s}.stepper-buttons button:hover:not(:disabled){background:#dceee7;transform:scale(1.08)}.stepper-buttons button:active:not(:disabled){transform:scale(.9)}.stepper-buttons button:disabled{opacity:.35}.stepper-buttons span{min-width:20px;text-align:center;font-weight:700}.booking-recap{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0}.booking-recap>div{background:#eff3ee;border-radius:15px;padding:18px;display:grid;gap:6px}.booking-recap span{font-size:10px;color:#71847d;text-transform:uppercase;letter-spacing:.1em}.booking-recap strong{font:17px var(--serif)}.booking-recap small{color:#71847d;line-height:1.4}.submit-booking{min-width:220px}.booking-success{min-height:calc(100vh - 120px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding-bottom:80px}.success-mark{display:grid;place-items:center;width:76px;height:76px;border-radius:50%;background:#d9eee5;color:#176044;font-size:31px;margin-bottom:25px}.booking-success h1{font:58px/1.05 var(--serif);margin:16px 0}.booking-success>p{max-width:570px;line-height:1.7;color:#61766f}.success-actions{display:flex;gap:10px;margin:22px 0}.admin-tabs{display:flex;align-items:center;gap:5px;background:#ffffff14;padding:4px;border-radius:99px}.admin-tabs button{border:0;background:transparent;color:#a9c7c0;padding:9px 18px;border-radius:99px;cursor:pointer}.admin-tabs button.active{background:#fff;color:var(--deep)}.board-page{padding:30px;position:relative}.chessboard-card{background:#fff;border-radius:22px;box-shadow:0 10px 35px #0739360f;overflow:hidden}.chessboard-toolbar{padding:24px 28px;display:flex;align-items:end;justify-content:space-between}.chessboard-toolbar h2{font:34px var(--serif);margin:5px 0 0}.board-navigation{display:flex;align-items:center;gap:7px}.board-scroll{overflow:auto;border-top:1px solid #e0e7e2}.board-grid{display:grid;grid-template-columns:180px repeat(35,42px);min-width:1650px}.board-header{height:66px;position:sticky;top:0;background:#fff;z-index:4}.board-label{position:sticky;left:0;z-index:3;background:#fff;border-right:1px solid #dfe5e1;padding:12px 16px;display:grid;align-content:center;gap:4px;grid-row:1;grid-column:1}.board-label small{color:#7a8b85}.board-date{border-right:1px solid #edf0ee;padding:7px 2px;text-align:center;display:grid;align-content:center;justify-items:center;grid-row:1}.board-date small{font-size:9px;color:#899892;text-transform:uppercase}.board-date strong{font:17px var(--serif)}.board-date span{font-size:8px;text-transform:uppercase;color:#789088}.board-date.weekend,.board-cell.weekend{background:#f7f1eb}.board-date.today,.board-cell.today{background:#e5f0eb}.board-row{position:relative;min-height:64px;border-top:1px solid #edf0ee}.board-cell{grid-row:1;border-right:1px solid #edf0ee;min-height:64px}.board-bar{grid-row:1;z-index:2;align-self:center;height:46px;margin:0 3px;border:0;border-radius:10px;padding:7px 10px;text-align:left;display:grid;align-content:center;overflow:hidden;cursor:pointer;transition:.2s}.board-bar:hover{transform:translateY(-3px);filter:saturate(1.12);box-shadow:0 8px 18px #07393626}.board-bar strong,.board-bar small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-bar strong{font-size:11px}.board-bar small{font-size:9px;opacity:.75}.confirmed-bar{background:#78b7a4;color:#073930}.pending-bar{background:#f6cd7a;color:#67460c}.blocked-bar{background:#87928e;color:#fff;cursor:default}.pending-divider{min-width:1650px;position:sticky;left:0;padding:10px 16px;background:#f3f5f1;border-top:1px solid #e0e7e2;display:flex;gap:15px;align-items:center}.pending-divider span{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.pending-divider small{color:#7a8b85}.board-empty{min-width:1650px;padding:28px;color:#7a8b85;text-align:center;border-top:1px solid #edf0ee}.board-legend{padding:17px 28px;display:flex;gap:22px;font-size:11px;color:#6e8079}.board-legend span{display:flex;align-items:center;gap:7px}.board-legend i{width:10px;height:10px;border-radius:3px}.board-legend .confirmed{background:#78b7a4}.board-legend .pending{background:#f6cd7a}.board-legend .blocked{background:#87928e}.board-booking-preview{position:fixed;right:25px;top:95px;width:370px;background:#fff;border-radius:22px;padding:28px;box-shadow:0 25px 70px #07393640;z-index:10}.board-booking-preview h2{font:32px var(--serif);margin:17px 0 5px}.board-booking-preview>p{color:#71847d}.preview-close{position:absolute;right:18px;top:18px;border:0;background:#eef1ed;width:34px;height:34px;border-radius:50%;cursor:pointer;font-size:20px}.preview-facts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:24px 0}.preview-facts span{display:grid;gap:4px;background:#f2f5f1;border-radius:12px;padding:12px}.preview-facts small{color:#788983}.preview-actions{display:flex;gap:8px;flex-wrap:wrap}.filter-chips{padding:0 22px 18px;display:flex;gap:6px;flex-wrap:wrap}.filter-chips button{border:1px solid #d6dfda;background:#fff;border-radius:99px;padding:7px 11px;font-size:11px;color:#526b63;cursor:pointer}.filter-chips button:hover{background:#edf4ef}.filter-chips button.active{background:var(--green);border-color:var(--green);color:#fff}@media(max-width:1000px){.hero-facts{gap:18px}.amenities-title,.faq{grid-template-columns:1fr;gap:35px}.booking-wizard{grid-template-columns:280px 1fr}.wizard-aside{padding:38px 28px}.wizard-panel{padding:45px 35px}.board-page{padding:16px}}@media(max-width:760px){.reveal{transform:translateY(15px)}.hero-facts{display:none}.media-interactive:hover{transform:none}.amenities-title{margin-bottom:45px}.amenity-columns,.experience,.teaser-content{grid-template-columns:1fr}.experience-card{min-height:440px;padding:35px}.large-cta{width:100%;height:auto;border-radius:99px;flex-direction:row}.mobile-booking-cta{position:fixed;display:flex;justify-content:space-between;align-items:center;left:14px;right:14px;bottom:14px;background:var(--orange);color:#173d37;border-radius:99px;padding:15px 20px;font-weight:700;z-index:20;box-shadow:0 14px 35px #07393640}.booking-page-header{height:72px}.booking-wizard{display:block;width:100%}.wizard-aside{border-radius:0;padding:22px 20px}.wizard-aside>.eyebrow,.wizard-aside>h1,.wizard-help{display:none}.wizard-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.wizard-progress li{padding:0}.wizard-progress li:before{display:none}.wizard-progress button{display:grid;justify-items:center;gap:6px;font-size:9px;width:100%}.wizard-panel{border-radius:0;padding:32px 18px;min-height:calc(100vh - 160px)}.wizard-step h2{font-size:34px}.availability-calendar{padding:12px}.calendar-grid{gap:3px}.calendar-day{border-radius:9px}.calendar-legend{gap:11px;flex-wrap:wrap}.date-selection{grid-template-columns:1fr 1fr}.date-selection>i{display:none}.date-selection strong{font-size:12px}.guest-options{gap:6px}.guest-options button{padding:13px 5px}.extra-details{margin-left:0;grid-template-columns:1fr}.wizard-actions{gap:10px}.wizard-actions .button{padding:13px 16px}.booking-recap{grid-template-columns:1fr}.booking-success h1{font-size:43px}.success-actions{flex-direction:column}.admin-header{height:auto;min-height:76px;flex-wrap:wrap;gap:10px;padding:12px 16px}.admin-tabs{order:3;width:100%}.admin-tabs button{flex:1}.board-page{padding:8px}.chessboard-toolbar{padding:18px;align-items:start}.chessboard-toolbar h2{font-size:28px}.board-booking-preview{inset:auto 10px 10px;width:auto;max-height:70vh;overflow:auto}.board-navigation .subtle{display:none}.faq-list p{padding-right:0}}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}.step-enter-active,.step-leave-active{transition:none}}.photo-button{appearance:none;border:0;font:inherit;color:inherit;cursor:pointer}.hero-media.photo-button{padding:0;background:#174f4a;display:block;text-align:left}.hero-media img,.media-card img,.story-photo img,.experience-photo{width:100%;height:100%;object-fit:cover}.hero-media img{position:absolute;inset:0;transition:transform .7s ease}.hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 48%,rgba(4,35,32,.76))}.hero-media span{position:absolute;left:34px;bottom:31px;z-index:2;font-size:13px;font-weight:700;letter-spacing:.06em}.hero-media:hover img{transform:scale(1.035)}.media-card{padding:0}.media-card img{position:absolute;inset:0;transition:transform .65s ease}.media-card:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 52%,rgba(4,35,32,.74));z-index:1}.media-card:hover img{transform:scale(1.045)}.media-card span{position:absolute;left:22px;bottom:22px}.experience-photo{position:absolute;inset:0;opacity:.6;transition:transform .7s ease}.experience-card:before{content:"";position:absolute;inset:0;background:linear-gradient(145deg,#133a3259,#052624d4);z-index:1}.experience-card>:not(.experience-photo){position:relative;z-index:2}.experience-card:hover .experience-photo{transform:scale(1.04)}.photo-story{padding-top:25px}.photo-story-heading{display:grid;grid-template-columns:1fr .7fr;gap:80px;align-items:end;margin-bottom:36px}.photo-story-heading h2{font:46px/1.12 var(--serif);margin:14px 0 0}.photo-story-heading p{color:#587069;line-height:1.75}.photo-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.story-photo{height:330px;border-radius:18px;overflow:hidden;position:relative;padding:0;background:#174f4a}.story-photo:nth-child(2n){margin-top:35px}.story-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 58%,rgba(5,38,36,.75))}.story-photo img{transition:transform .45s ease}.story-photo:hover img{transform:scale(1.055)}.story-photo span{position:absolute;left:15px;bottom:15px;color:#fff;font-size:12px;font-weight:700;z-index:1}.photo-lightbox{position:fixed;inset:0;background:#031917eb;z-index:100;display:grid;place-items:center;padding:28px}.photo-lightbox img{max-width:min(1200px,94vw);max-height:90vh;border-radius:14px;box-shadow:0 30px 90px #0006}.photo-lightbox button{position:fixed;right:24px;top:20px;width:46px;height:46px;border:1px solid rgba(255,255,255,.45);border-radius:50%;background:#00000040;color:#fff;font-size:29px;cursor:pointer;z-index:1}.extra-icon svg{width:38px;height:38px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.manage-card>div{min-width:0}.manage-card h1{overflow-wrap:anywhere}.booking-id{font-size:.62em;color:#39746b;white-space:nowrap}.manage-summary{grid-template-columns:1.5fr .7fr .9fr}.manage-summary .manage-dates{grid-column:1/-1}.manage-dates strong{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.manage-dates strong i{font-style:normal;color:#8b9c96}.manage-dates small{color:#70837c}.manage-services{border:1px solid #dce5df;border-radius:16px;overflow:hidden;margin:22px 0 30px}.manage-services>div{display:flex;justify-content:space-between;gap:20px;padding:14px 17px;border-bottom:1px solid #e8eeea}.manage-services>div:last-child{border:0}.manage-services span{color:#62766f}.manage-services strong{text-align:right}.manage-services .manage-total{background:#e7f0eb;padding:18px 17px}.manage-total span,.manage-total strong{font-size:18px;color:#123f37}.board-toolbar-actions{display:flex;align-items:center;gap:12px}.preview-prices{display:grid;gap:7px;padding:13px 0;margin:-8px 0 20px;border-top:1px solid #e5ebe7;border-bottom:1px solid #e5ebe7}.preview-prices span{display:flex;justify-content:space-between;color:#6d817a;font-size:12px}.preview-prices strong{color:#24483f}.booking-editor form{max-width:900px}.editor-heading{border-bottom:1px solid #e2e9e5;padding-bottom:19px}.editor-section{padding:25px 0;border-bottom:1px solid #e2e9e5}.editor-section-title{display:flex;align-items:center;gap:13px;margin-bottom:20px}.editor-section-title>span{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#e2eee8;color:#256252;font-size:11px;font-weight:800}.editor-section-title h3{font:23px var(--serif);margin:0}.editor-section-title p{font-size:11px;color:#71847d;margin:4px 0 0}.editor-section>label+label{margin-top:16px}.price-lines{display:grid;gap:9px}.price-lines>label{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#f4f6f2;border-radius:13px;padding:12px 14px}.price-lines>label>span:first-child{display:grid;gap:3px;min-width:0}.price-lines small{font-weight:400;color:#758780}.money-input{position:relative;display:block;width:150px;flex:0 0 150px}.money-input input{padding-right:34px;text-align:right;font-weight:700;background:#fff}.money-input i{position:absolute;right:14px;top:50%;transform:translateY(-50%);font-style:normal;color:#698078}.other-price>span:first-child{flex:1}.other-price>span:first-child input{margin-top:5px;font-weight:400;background:#fff}.price-grand-total{display:flex;align-items:baseline;justify-content:space-between;padding:24px 5px 8px}.price-grand-total span{font:24px var(--serif)}.price-grand-total strong{font:34px var(--serif);color:var(--green)}.auto-price{display:block;text-align:right;color:#74857f}.admin-modal{position:fixed;inset:0;background:#042421b8;z-index:50;display:flex;justify-content:center;align-items:flex-start;padding:35px 16px;overflow-y:auto}.block-editor{position:relative;width:min(650px,100%);background:#fff;border-radius:24px;padding:34px;box-shadow:0 28px 90px #04232047}.block-editor>h2{font:38px var(--serif);margin:10px 0}.block-editor>p{color:#657a73;line-height:1.55;padding-right:35px}.block-editor .availability-calendar{margin:18px 0}.block-presets{display:flex;gap:7px;flex-wrap:wrap}.block-presets button{border:1px solid #cbd8d2;border-radius:99px;background:#fff;padding:8px 12px;color:#315e54;cursor:pointer}.block-presets button:hover{background:#e8f1ec}.block-selection{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center;margin:17px 0}.block-selection span{display:grid;gap:3px;background:#f1f5f1;padding:12px;border-radius:11px}.block-selection small{color:#758780;text-transform:uppercase;font-size:9px}.block-selection i{font-style:normal}.block-editor>.button{margin-top:14px}.active-blocks{margin-top:28px;border-top:1px solid #dde6e1;padding-top:18px}.active-blocks h3{font:21px var(--serif)}.active-blocks>div{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;border-top:1px solid #edf1ee}.active-blocks span{display:grid;gap:3px}.active-blocks small{color:#758780}.active-blocks button{border:0;background:#f7e2dc;color:#913d28;border-radius:99px;padding:7px 10px;cursor:pointer}@media(max-width:900px){.photo-story-heading{grid-template-columns:1fr;gap:15px}.photo-strip{grid-template-columns:repeat(3,1fr)}.story-photo:nth-child(2n){margin-top:0}.story-photo{height:280px}.board-toolbar-actions{align-items:flex-end;flex-direction:column}}@media(max-width:600px){.hero-media span{left:24px;bottom:23px}.photo-story-heading h2{font-size:36px}.photo-strip{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin-right:-14px;padding-right:14px}.story-photo{flex:0 0 72vw;height:380px;scroll-snap-align:start}.photo-lightbox{padding:10px}.photo-lightbox button{right:12px;top:12px}.manage-summary{grid-template-columns:1fr 1fr}.manage-summary .manage-dates{grid-column:1/-1}.manage-dates strong{display:grid;grid-template-columns:1fr auto 1fr;gap:7px;font-size:14px}.manage-dates time{min-width:0;overflow-wrap:anywhere}.manage-card .button.danger{width:100%;margin-bottom:18px}.manage-card .text-link.dark{display:block;width:max-content;margin:0 auto}.chessboard-toolbar{gap:10px}.board-toolbar-actions{align-items:stretch;gap:8px}.close-dates-button{padding:10px 13px;font-size:12px}.board-navigation{justify-content:flex-end}.booking-editor{padding:10px}.booking-editor form{padding:20px}.editor-heading h2{font-size:25px;overflow-wrap:anywhere}.editor-section{padding:21px 0}.price-lines>label{align-items:flex-start;flex-direction:column}.money-input{width:100%;flex-basis:auto}.price-grand-total strong{font-size:27px}.block-editor{padding:27px 16px 20px;border-radius:19px}.block-editor>h2{font-size:32px}.block-editor .availability-calendar{padding:8px}.block-selection strong{font-size:12px}.active-blocks>div{align-items:flex-start;flex-direction:column}}.media-interactive,.photo-button{cursor:zoom-in}.media-interactive:hover{transform:none;border-color:#ffffff9e}.gallery .media-card,.gallery .media-card.water,.gallery .media-card.bath{border-radius:34px}.gallery .media-card:hover:after{inset:20px;border-color:#ffffff7a}.hero-media span,.media-card span,.story-photo span{color:#fff;background:#05302be0;text-shadow:0 1px 2px rgba(0,0,0,.28);padding:10px 15px;border-radius:999px;line-height:1.25}.hero-media span{left:28px;bottom:26px}.media-card span{left:20px;bottom:20px}.story-photo span{left:13px;bottom:13px}.hero-media:hover,.media-card:hover,.story-photo:hover{box-shadow:0 18px 45px #07393629}.hero-media,.media-card,.story-photo{transition:box-shadow .3s ease,border-color .3s ease}.hero-media img,.media-card img,.story-photo img{will-change:transform}.show-all-photos{display:flex;margin:46px auto 0}.collapse-photos{display:block;width:max-content;margin:38px auto 0;border:0;background:transparent;cursor:pointer}.photo-strip{grid-template-columns:repeat(4,1fr)}.story-photo{height:310px}.story-photo:nth-child(2n){margin-top:0}.story-photo:nth-child(8n+2),.story-photo:nth-child(8n+4),.story-photo:nth-child(8n+5),.story-photo:nth-child(8n+7){height:350px}.contact-address{color:#587069;line-height:1.65}.map-frame{height:300px;border-radius:22px;overflow:hidden;background:#dce8e1;box-shadow:0 12px 35px #0739361a;margin-bottom:10px}.map-frame iframe{display:block;width:100%;height:100%;border:0}.contact-card{padding-left:40px}.board-grid{grid-template-columns:190px repeat(35,minmax(48px,1fr));min-width:1870px;width:100%}.pending-divider,.board-empty{min-width:1870px;width:100%}.board-row,.board-cell{min-height:70px}.board-bar{height:50px;margin:0 5px;border-radius:12px;padding:7px 11px;min-width:0}.board-bar:hover{transform:none;filter:saturate(1.1);box-shadow:0 8px 18px #0739362e}.board-bar.compact-bar{padding:5px 7px;justify-items:center;text-align:center}.board-bar.one-day-bar{margin-inline:6px;border-radius:11px}.board-bar.one-day-bar strong{font-size:12px;letter-spacing:.02em}.blocked-bar.one-day-bar strong{font-size:18px;font-weight:500}.board-bar[title]{position:relative}.calendar-day.multi-selected{background:var(--green);color:#fff;box-shadow:0 7px 18px #0e51483d}.calendar-day.multi-selected:hover:not(:disabled){background:#17695d}.day-picker-calendar .calendar-day.occupied{cursor:not-allowed}.selected-days-summary{display:flex;align-items:center;gap:12px;background:#eef4ef;border-radius:13px;padding:13px 15px;margin:17px 0}.selected-days-summary span{color:#6c8078}.selected-days-summary strong{font:24px var(--serif);color:var(--green)}.selected-days-summary button{margin-left:auto;border:0;background:transparent;color:#8c4c39;cursor:pointer;border-bottom:1px solid currentColor;padding:3px 0}@media(max-width:900px){.photo-strip{grid-template-columns:repeat(3,1fr)}.story-photo,.story-photo:nth-child(8n+2),.story-photo:nth-child(8n+4),.story-photo:nth-child(8n+5),.story-photo:nth-child(8n+7){height:300px}.contact-card{padding-left:0;border-left:0}}@media(max-width:600px){.gallery .media-card,.gallery .media-card.water,.gallery .media-card.bath{border-radius:26px}.hero-media span,.media-card span,.story-photo span{font-size:12px;padding:9px 13px}.photo-strip{display:flex}.story-photo,.story-photo:nth-child(8n+2),.story-photo:nth-child(8n+4),.story-photo:nth-child(8n+5),.story-photo:nth-child(8n+7){height:380px}.map-frame{height:260px;border-radius:18px}.selected-days-summary{margin:13px 0}.calendar-day.multi-selected{box-shadow:none}}body{font-size:16px;line-height:1.55}.eyebrow{font-size:12px;line-height:1.45}.nav-links{font-size:15px}.hero-content>p,.lead,.features p,.amenities-title p,.amenity-columns li,.price p,.teaser-content p,.faq-list p,.contact-address{font-size:16px}.hero-facts span{font-size:13px}.hero-facts strong{font-size:20px}.rule-chips span{font-size:13px;padding:10px 15px}.contact-card a{font-size:20px;line-height:1.35}.hero-media.photo-button{overflow:hidden;border-radius:220px 220px 32px 32px;border:0;box-shadow:0 24px 70px #021f1d3d}.hero-media:after{background:linear-gradient(180deg,transparent 62%,rgba(6,49,44,.7));transition:none}.hero-media:hover:after{background:linear-gradient(180deg,transparent 62%,rgba(6,49,44,.7))}.hero-media:hover{box-shadow:0 28px 76px #021f1d47}.hero-media img{filter:none}.hero-media:hover img{filter:none;transform:scale(1.025)}.hero-media span,.media-card span{color:#dfe9e2;background:#08463ed1;text-shadow:none;font-size:14px;font-weight:650;letter-spacing:.01em}.media-card:after{display:none}.gallery .media-card,.gallery .media-card.water,.gallery .media-card.bath{border-radius:30px;box-shadow:0 14px 38px #0739361a}.media-card:before{background:linear-gradient(180deg,transparent 68%,rgba(5,46,41,.45))}.media-card:hover img{transform:scale(1.03)}.quote{min-width:390px;border-radius:42px;padding:42px;grid-template-columns:1fr 1fr;gap:28px 38px;align-items:start;box-shadow:0 16px 42px #59502f14}.quote>div{display:grid;gap:7px}.quote span{font-size:13px;letter-spacing:.12em}.quote strong{font-size:26px;margin:0}.quote small{grid-column:1/-1;font-size:14px;line-height:1.65;padding-top:20px;border-top:1px solid rgba(74,91,82,.2)}.photo-story{overflow:hidden}.gallery-viewer{display:grid;gap:16px}.gallery-stage{position:relative;aspect-ratio:16/9;border-radius:32px;overflow:hidden;background:#123f39;box-shadow:0 24px 65px #07393624}.gallery-open{position:absolute;inset:0;width:100%;height:100%;border:0;padding:0;background:#123f39;cursor:zoom-in}.gallery-open img{display:block;width:100%;height:100%;object-fit:cover}.gallery-stage:after{content:"";position:absolute;inset:auto 0 0;height:32%;background:linear-gradient(transparent,#052c28b3);pointer-events:none}.gallery-caption{position:absolute;left:26px;right:26px;bottom:22px;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#d9e7df;pointer-events:none}.gallery-caption span{font-size:16px;font-weight:650}.gallery-caption strong{font-size:13px;font-weight:600;letter-spacing:.1em;color:#a9c9bd}.gallery-arrow,.lightbox-arrow{display:grid;place-items:center;border:1px solid rgba(213,231,222,.45);border-radius:50%;background:#073d36c2;color:#dce9e2;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background .22s ease,transform .22s ease,box-shadow .22s ease}.gallery-arrow{position:absolute;z-index:4;top:50%;width:48px;height:48px;transform:translateY(-50%);font-size:20px}.gallery-arrow.previous{left:20px}.gallery-arrow.next{right:20px}.gallery-arrow:hover{background:#0d5d51f0;transform:translateY(-50%) scale(1.06);box-shadow:0 8px 25px #03221f47}.gallery-arrow:active{transform:translateY(-50%) scale(.96)}.gallery-thumbnails{display:flex;gap:10px;overflow-x:auto;padding:5px 2px 12px;scroll-snap-type:x proximity;scrollbar-color:#80a79c transparent;scrollbar-width:thin}.gallery-thumbnails button{flex:0 0 94px;height:70px;padding:0;border:2px solid transparent;border-radius:13px;overflow:hidden;background:#dbe5df;cursor:pointer;opacity:.68;scroll-snap-align:center;transition:opacity .22s ease,border-color .22s ease,transform .22s ease}.gallery-thumbnails button:hover{opacity:1;transform:translateY(-2px)}.gallery-thumbnails button.active{opacity:1;border-color:#2f7c6d;box-shadow:0 5px 16px #0739362e}.gallery-thumbnails img{display:block;width:100%;height:100%;object-fit:cover}.gallery-fade-enter-active,.gallery-fade-leave-active{transition:opacity .28s ease,transform .42s cubic-bezier(.2,.75,.2,1)}.gallery-fade-enter-from{opacity:0;transform:scale(1.018)}.gallery-fade-leave-to{opacity:0;transform:scale(.992)}.photo-lightbox{grid-template-columns:80px minmax(0,1fr) 80px;grid-template-rows:1fr auto;gap:16px;background:#042320f2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.photo-lightbox img{grid-column:2;grid-row:1;max-width:100%;max-height:calc(90vh - 70px);border-radius:22px;box-shadow:0 30px 90px #00000061}.photo-lightbox .lightbox-close{position:fixed;right:22px;top:18px;width:46px;height:46px;border:1px solid rgba(209,229,219,.42);border-radius:50%;background:#09483fc2;color:#dce9e2;font-size:27px;cursor:pointer;z-index:4}.photo-lightbox .lightbox-arrow{position:static;right:auto;top:auto;width:52px;height:52px;align-self:center;justify-self:center;font-size:21px}.photo-lightbox .lightbox-arrow.previous{grid-column:1;grid-row:1}.photo-lightbox .lightbox-arrow.next{grid-column:3;grid-row:1}.lightbox-caption{grid-column:2;grid-row:2;display:flex;justify-content:center;gap:18px;color:#d7e5dd;font-size:14px}.lightbox-caption strong{color:#8eb7ab}.lightbox-image-enter-active,.lightbox-image-leave-active{transition:opacity .24s ease,transform .34s cubic-bezier(.2,.75,.2,1)}.lightbox-image-enter-from{opacity:0;transform:scale(.975)}.lightbox-image-leave-to{opacity:0;transform:scale(1.015)}.button,.features article,.experience-card,.faq-list details,.contact-card a{transition-duration:.24s;transition-timing-function:cubic-bezier(.2,.75,.2,1)}@media(max-width:900px){.quote{min-width:0}.hero-media.photo-button{border-radius:170px 170px 28px 28px}.gallery-stage{aspect-ratio:4/3}.gallery-caption{left:20px;right:20px}.photo-lightbox{grid-template-columns:58px minmax(0,1fr) 58px;padding:18px 8px}}@media(max-width:600px){body{font-size:16px}.hero-media.photo-button{border-radius:150px 150px 24px 24px}.hero-media span,.media-card span{color:#dbe7df;font-size:13px}.price{gap:30px}.quote{grid-template-columns:1fr 1fr;padding:28px 24px;border-radius:28px;gap:22px}.quote strong{font-size:22px}.quote small{font-size:13px;padding-top:16px}.gallery-stage{aspect-ratio:4/5;border-radius:24px}.gallery-open img{object-position:center}.gallery-arrow{width:42px;height:42px}.gallery-arrow.previous{left:12px}.gallery-arrow.next{right:12px}.gallery-caption{left:16px;right:16px;bottom:15px}.gallery-caption span{font-size:14px}.gallery-thumbnails button{flex-basis:78px;height:59px;border-radius:10px}.photo-lightbox{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr auto auto;padding:64px 12px 18px}.photo-lightbox img{grid-column:1/-1;grid-row:1;max-height:70vh;border-radius:16px}.photo-lightbox .lightbox-arrow{width:48px;height:48px;grid-row:2}.photo-lightbox .lightbox-arrow.previous{grid-column:1;justify-self:end}.photo-lightbox .lightbox-arrow.next{grid-column:2;justify-self:start}.lightbox-caption{grid-column:1/-1;grid-row:3}.photo-lightbox .lightbox-close{right:12px;top:12px}.photo-story-heading p{font-size:15px}}@media(prefers-reduced-motion:reduce){.gallery-fade-enter-active,.gallery-fade-leave-active,.lightbox-image-enter-active,.lightbox-image-leave-active{transition:none}.gallery-open img,.hero-media img,.media-card img{transform:none!important}}.step-count,.choice-label,.booking-recap span,.booking-summary span,.status-pill,.status-dot,.calendar-legend{font-size:12px}.weekday{font-size:11px}.board-date small,.board-date span{font-size:10px}.board-bar strong{font-size:12px}.board-bar small{font-size:10px}.board-label small,.pending-divider small,.board-legend{font-size:12px}.features article:hover,.features article:focus,.experience-card:hover{transform:translateY(-4px)}@media(max-width:760px){.wizard-progress button{font-size:11px}.board-legend{gap:14px;flex-wrap:wrap}.gallery-caption strong{font-size:12px}}.board-page{box-sizing:border-box;width:100%;max-width:1930px;min-width:0;margin-inline:auto}.chessboard-card{min-width:0;max-width:100%}.board-scroll{max-width:100%;overflow-x:auto;overflow-y:hidden;overscroll-behavior-inline:contain;scrollbar-gutter:stable}.board-grid{grid-template-columns:190px repeat(35,48px);width:1870px;min-width:1870px}.pending-divider,.board-empty{box-sizing:border-box;width:1870px;min-width:1870px}.board-header{height:60px}.board-row,.board-cell{min-height:64px}.board-bar{height:44px;margin-inline:4px}@media(max-width:760px){.board-page{padding:8px}.chessboard-card{border-radius:16px}.board-grid{grid-template-columns:142px repeat(35,46px);width:1752px;min-width:1752px}.pending-divider,.board-empty{width:1752px;min-width:1752px}.board-label{padding-inline:11px}.board-scroll{scrollbar-gutter:auto}}.nav .brand,.booking-page-header .brand{font-size:clamp(22px,2.25vw,30px);letter-spacing:.01em;white-space:nowrap}.nav .brand span,.booking-page-header .brand span{width:52px;height:52px;font-size:16px;border-width:1.5px;flex:0 0 auto}.nav-phone{display:grid;gap:2px;text-align:right;white-space:nowrap;transition:color .22s ease,transform .22s ease}.nav-phone small{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#9fc5bc}.nav-phone strong{font-size:16px;color:#f2f5ee}.nav-phone:hover{color:#fff;transform:translateY(-2px)}.nav .nav-mark{font-size:0}.nav .nav-mark span{width:58px;height:58px;font-size:17px;background:#ffffff0f;transition:background .22s ease,transform .22s ease}.nav .nav-mark:hover span{background:#ffffff24;transform:rotate(-5deg) scale(1.04)}.hero h1{white-space:nowrap;font-size:clamp(64px,7.6vw,112px);line-height:.98;margin:18px 0 14px;letter-spacing:-.045em}.hero-slogan{font:clamp(25px,2.4vw,35px)/1.2 var(--serif);color:#b5d9cf;margin-bottom:24px}.hero-content>.hero-description{margin-top:0}.contact-phone{display:grid;gap:7px;padding:4px 0 21px;border-bottom:1px solid #aac0b7}.contact-phone>a:first-child{font-size:clamp(27px,2.8vw,38px);line-height:1.1;color:#0b5549;white-space:nowrap}.contact-phone small{font-size:14px;line-height:1.55;color:#587069}.contact-phone small .contact-sms{display:inline;font:700 14px Manrope,Arial,sans-serif;color:#17685b;text-decoration:underline;text-underline-offset:3px}.availability-mobile-call .sms-link{font:700 14px Manrope,Arial,sans-serif;color:#17685b;text-decoration:underline;text-underline-offset:4px}.contact-card>.map-link,.contact-card>.avito-link{display:inline-flex;width:max-content;max-width:100%;transition:color .22s ease,transform .22s ease}.contact-card>.map-link:hover,.contact-card>.avito-link:hover{color:#1d7668;transform:translate(6px)}.gallery .media-card span{left:22px;right:auto;bottom:22px;margin:0;transform:none}.amenities-title{grid-template-columns:1fr 1fr;gap:80px;align-items:start}.amenities-title>p{margin:39px 0 0}.availability-page{background:linear-gradient(145deg,#eaf0e9,#d9e7e1);padding-bottom:50px}.availability-layout{display:grid;grid-template-columns:minmax(320px,.78fr) minmax(560px,1.22fr);min-height:calc(100vh - 120px);border-radius:30px;overflow:hidden;box-shadow:0 26px 80px #07393621}.availability-copy{padding:54px 48px;background:linear-gradient(145deg,#073936,#17635b);color:#fff}.availability-copy h1{font:clamp(40px,4vw,56px)/1.08 var(--serif);margin:18px 0 26px}.availability-copy>p{color:#c5ddd7;line-height:1.75;max-width:520px}.booking-phone-card{display:grid;gap:10px;margin:38px 0 28px;padding:24px;border-radius:22px;background:#ffffff1a;border:1px solid rgba(207,232,224,.22)}.booking-phone-card>span{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:#afd0c8}.booking-phone-card>a{font:clamp(28px,2.6vw,36px)/1.15 var(--serif);color:#fff;white-space:nowrap}.booking-phone-card>p{margin:0;color:#c8ded8;line-height:1.55}.booking-phone-card>div{display:flex;gap:9px;margin-top:8px;flex-wrap:wrap}.booking-call-notes{display:grid;gap:0;list-style:none;padding:0;margin:0}.booking-call-notes li{display:flex;justify-content:space-between;gap:16px;padding:15px 0;border-top:1px solid rgba(210,232,225,.2)}.booking-call-notes span{color:#afcbc4;text-align:right}.availability-panel{padding:54px;background:#fff;min-width:0}.availability-panel h2{font:clamp(38px,4vw,54px)/1.08 var(--serif);margin:12px 0}.availability-panel>p{color:#637970;line-height:1.65}.availability-panel .availability-calendar{margin-top:28px}.availability-panel .calendar-day:disabled:not(.past){opacity:1;cursor:default}.availability-panel .calendar-day:hover:disabled{transform:none}.availability-mobile-call{display:grid;gap:13px;text-align:center;margin-top:24px}.blocked-bar{cursor:pointer}.blocked-bar:hover{filter:brightness(1.06);box-shadow:0 8px 18px #07393633}.block-status{background:#e1e6e3;color:#53645e}.block-preview .preview-facts{grid-template-columns:1fr 1fr}.block-preview .preview-facts span:last-child{grid-column:1/-1}.booking-create-editor{width:min(680px,100%)}.booking-create-editor>label{margin:17px 0}.create-booking-total{display:grid;gap:5px;background:#e9f1ec;border-radius:16px;padding:18px;margin-top:20px}.create-booking-total>span{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#657a72}.create-booking-total>strong{font:30px var(--serif);color:var(--green)}.create-booking-total>small{color:#63776f;line-height:1.5}@media(max-width:980px){.availability-layout{grid-template-columns:1fr;overflow:visible}.availability-copy,.availability-panel{padding:40px}.amenities-title>p{margin-top:0}}@media(max-width:1100px){.nav .nav-mark span{width:50px;height:50px}.nav-phone small{display:none}.nav-phone strong{font-size:14px}}@media(max-width:600px){.nav .brand,.booking-page-header .brand{font-size:18px}.nav .brand span,.booking-page-header .brand span{width:42px;height:42px}.nav-phone strong{font-size:13px}.nav .nav-mark span{width:42px;height:42px}.hero h1{font-size:clamp(43px,12.4vw,54px);letter-spacing:-.055em;margin-bottom:10px}.hero-slogan{font-size:23px;margin-bottom:18px}.contact-phone>a:first-child{font-size:29px}.availability-page{padding-bottom:16px}.availability-layout{width:100%;border-radius:0;box-shadow:none}.availability-copy,.availability-panel{padding:32px 16px}.availability-copy h1{font-size:43px}.booking-phone-card{margin-top:28px;padding:20px}.booking-phone-card>a{font-size:30px}.booking-call-notes li{align-items:flex-start;flex-direction:column;gap:4px}.booking-call-notes span{text-align:left}.availability-panel .availability-calendar{padding:10px}.gallery-stage{overflow:visible;margin-bottom:62px;border-radius:24px;background:transparent;box-shadow:none}.gallery-open{overflow:hidden;border-radius:24px;box-shadow:0 18px 44px #07393629}.gallery-stage:after{border-radius:0 0 24px 24px}.gallery-arrow{top:calc(100% + 12px);transform:none;background:#0e5148;border-color:#0e5148}.gallery-arrow.previous{left:calc(50% - 50px)}.gallery-arrow.next{right:calc(50% - 50px)}.gallery-arrow:hover{transform:scale(1.05);background:#17695d}.gallery-arrow:active{transform:scale(.95)}}@media(max-width:400px){.nav .nav-mark{gap:0}.nav .nav-mark span{width:40px;height:40px;font-size:13px}.nav-phone strong{font-size:12px}}
