@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap");@tailwind base;@tailwind components;@tailwind utilities;:root{--ink:#202923;--muted:#68736b;--green:#284c3a;--sage:#dce5d9;--cream:#f7f5ef;--sand:#e9e2d4;--line:#e4e4dc}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:#fff;color:var(--ink);font-family:DM Sans,sans-serif}.brand,h1,h2,h3{font-family:Manrope,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a,button,input,select,textarea{outline-offset:4px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #b88750}.container{width:min(1160px,calc(100% - 48px));margin:auto}.eyebrow{font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;color:var(--green);font-weight:700}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:999px;background:var(--green);color:white;padding:15px 22px;font-weight:700;cursor:pointer;transition:transform .2s,background .2s}.button:hover{background:#1d392b;transform:translateY(-1px)}.button-outline{background:transparent;color:var(--green);border:1px solid #aab6aa}.button-outline:hover{background:#edf1eb;color:var(--green)}.section{padding:96px 0}.section-heading{max-width:680px;margin-bottom:36px}.section-heading h2{font-size:clamp(2rem,4vw,3.4rem);line-height:1.1;letter-spacing:-.045em;margin:12px 0}.section-heading p{color:var(--muted);line-height:1.75}.header{height:78px;border-bottom:1px solid #eee;background:#fff;position:-webkit-sticky;position:sticky;top:0;z-index:20}.header,.nav{display:flex;align-items:center}.nav{justify-content:space-between;gap:28px}.brand{font-size:1.35rem;font-weight:800;letter-spacing:.16em;color:var(--green)}.navlinks{display:flex;align-items:center;gap:28px;font-size:.92rem}.navlinks a:hover{color:var(--green)}.nav-actions{display:flex;align-items:center;gap:14px}.lang{color:var(--ink);font-weight:700;cursor:pointer;padding:8px}.lang,.mobile-toggle{border:0;background:transparent}.mobile-toggle{display:none;font-size:1.5rem;color:var(--green)}.hero{padding:40px 0 50px;background:var(--cream)}.hero-grid{display:grid;grid-template-columns:.86fr 1.14fr;grid-gap:52px;gap:52px;align-items:center}.hero-copy{padding:30px 0}.hero h1{font-size:clamp(2.7rem,5vw,4.7rem);line-height:1.02;letter-spacing:-.06em;margin:16px 0 20px}.hero-copy>p{color:#58645b;font-size:1.1rem;line-height:1.8;max-width:490px}.hero-facts{display:flex;gap:18px;margin:26px 0 30px;color:#506056;font-size:.92rem;flex-wrap:wrap}.hero-facts span{display:flex;gap:8px;align-items:center}.hero-media{height:540px;position:relative;border-radius:6px 96px 6px 6px;overflow:hidden;background:#dce2da}.hero-media img{width:100%;height:100%;object-fit:cover}.image-placeholder{height:100%;display:flex;align-items:center;justify-content:center;text-align:center;padding:28px;background:linear-gradient(145deg,#e4e9e1,#d4dfd4 52%,#eee9dc);color:#43594b}.placeholder-mark{font-family:Manrope;font-size:4rem;letter-spacing:.18em;font-weight:800;opacity:.27}.placeholder-label{position:absolute;bottom:18px;left:18px;background:#fffdf4e8;padding:10px 14px;border-radius:4px;font-size:.77rem;color:#58645b}.hero-note{font-size:.8rem!important;color:#68736b!important;margin-top:16px}.scroll-link{font-size:.95rem;color:var(--green);font-weight:700;margin-left:18px}.stat-band{display:grid;grid-template-columns:repeat(4,1fr);padding:26px 0;border-bottom:1px solid var(--line)}.stat{padding:0 22px;border-right:1px solid var(--line)}.stat:first-child{padding-left:0}.stat:last-child{border:0}.stat strong{display:block;font-size:1.3rem;font-family:Manrope}.stat span{font-size:.83rem;color:var(--muted)}.gallery-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;grid-template-rows:205px 205px;grid-gap:12px;gap:12px}.gallery-card{position:relative;overflow:hidden;border-radius:5px;background:var(--sage)}.gallery-card:first-child{grid-row:span 2}.gallery-card img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.gallery-card:hover img{transform:scale(1.04)}.gallery-card button{position:absolute;inset:0;border:0;background:transparent;cursor:pointer}.gallery-label{position:absolute;bottom:12px;left:12px;background:#fffdf4e8;padding:7px 11px;font-size:.78rem;border-radius:3px;pointer-events:none}.gallery-help{color:var(--muted);font-size:.85rem;margin-top:14px}.stay{background:var(--cream)}.stay-grid{display:grid;grid-template-columns:.75fr 1.25fr;grid-gap:80px;gap:80px}.stay-intro{position:-webkit-sticky;position:sticky;top:110px;align-self:start}.room-list{border-top:1px solid var(--line)}.room{display:grid;grid-template-columns:52px 1fr auto;align-items:center;grid-gap:18px;gap:18px;padding:22px 4px;border-bottom:1px solid var(--line)}.room-number{font-family:Manrope;font-size:1.1rem;color:#9a9e95}.room h3{font-size:1.05rem;margin:0 0 4px}.room p{margin:0;color:var(--muted);font-size:.9rem}.room-icon{font-size:1.4rem;color:var(--green)}.amenity-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:20px;gap:20px}.amenity-card{border:1px solid var(--line);padding:28px;border-radius:5px}.amenity-card h3{font-size:1.2rem;margin:0 0 18px}.amenity-list{display:grid;grid-gap:14px;gap:14px}.amenity-item{display:flex;align-items:flex-start;gap:12px;color:#505d53}.amenity-item b{font-weight:500}.amenity-icon{color:var(--green);font-size:1.05rem;width:20px}.subnote{font-size:.82rem;color:var(--muted);line-height:1.6;margin-top:20px}.location{background:#eff2eb}.location-grid{display:grid;grid-template-columns:.9fr 1.1fr;grid-gap:40px;gap:40px;align-items:center}.map-placeholder{min-height:310px;display:grid;place-items:center;background:#dfe5db;border-radius:4px;position:relative;overflow:hidden}.map-placeholder:after,.map-placeholder:before{content:"";position:absolute;width:120%;height:1px;background:#fff;transform:rotate(-24deg)}.map-placeholder:after{transform:rotate(35deg);width:100%}.map-pin{z-index:1;background:var(--green);color:#fff;border-radius:40px;padding:13px 20px;box-shadow:0 8px 25px #284c3a35}.map-caption{position:absolute;bottom:14px;background:#ffffffdb;padding:7px 12px;font-size:.78rem;color:var(--muted);z-index:2}.faq-list{max-width:850px}.faq-item{border-bottom:1px solid var(--line);padding:22px 0}.faq-item summary{font-family:Manrope;font-size:1.08rem;font-weight:700;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px}.faq-item summary:after{content:"+";color:var(--green);font-size:1.4rem}.faq-item[open] summary:after{content:"−"}.faq-item p{max-width:700px;color:var(--muted);line-height:1.7;margin:14px 0 0}.booking{background:var(--cream)}.booking-grid{display:grid;grid-template-columns:.8fr 1.2fr;grid-gap:55px;gap:55px;align-items:start}.booking-card{background:white;border:1px solid var(--line);padding:30px;border-radius:5px;box-shadow:0 18px 50px #24352a0a}.form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:18px;gap:18px}.field{display:grid;grid-gap:7px;gap:7px}.field-wide{grid-column:1/-1}.field label{font-size:.85rem;font-weight:700}.field input,.field select,.field textarea{width:100%;border:1px solid #d9ddd5;border-radius:4px;padding:12px 13px;background:#fff;color:var(--ink)}.field textarea{min-height:94px;resize:vertical}.field-error{color:#a43d32;font-size:.82rem}.form-error{color:#a43d32;background:#fff2ee;border-radius:4px;padding:11px;margin:14px 0}.form-help{font-size:.82rem;margin:16px 0}.form-help,.privacy{color:var(--muted);line-height:1.6}.privacy{font-size:.78rem}.cta{padding:76px 0;background:var(--green);color:#fff;text-align:center}.cta .eyebrow{color:#d7e2d5}.cta h2{font-size:clamp(2rem,4vw,3.4rem);letter-spacing:-.04em;margin:13px 0}.cta p{color:#d5ded5;max-width:560px;margin:0 auto 24px;line-height:1.7}.cta .button{background:#fff;color:var(--green)}.footer{padding:45px 0 24px;background:#1e2e24;color:#e8eee7}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;grid-gap:36px;gap:36px;padding-bottom:35px}.footer a,.footer p{font-size:.88rem;color:#bac7bc;line-height:1.8}.footer-nav{display:grid;grid-gap:6px;gap:6px}.footer-heading{color:#fff;font-weight:700;margin-bottom:10px}.footer-bottom{border-top:1px solid #ffffff20;padding-top:20px;display:flex;justify-content:space-between;gap:14px;color:#a9b6aa;font-size:.8rem}.lightbox{position:fixed;inset:0;background:#111e;z-index:40;display:grid;place-items:center;padding:30px}.lightbox-content{position:relative;width:min(100%,1000px);height:min(80vh,700px);background:#eef0eb}.lightbox-content img{width:100%;height:100%;object-fit:contain}.lightbox-close{position:absolute;right:12px;top:12px;border:0;background:#fff;border-radius:50%;width:42px;height:42px;font-size:1.4rem;cursor:pointer;z-index:1}.lightbox-caption{position:absolute;bottom:12px;left:12px;background:#fff;padding:8px 12px}.mobile-menu{display:none}@media(max-width:900px){.navlinks{gap:16px}.navlinks a{font-size:.85rem}.nav-actions .button{padding:12px 15px;font-size:.85rem}.hero-grid{gap:30px}.hero-media{height:460px}.stay-grid{gap:42px}.booking-grid{gap:28px}}@media(max-width:700px){.container{width:min(100% - 36px,560px)}.section{padding:70px 0}.header{height:68px}.nav-actions>.button,.navlinks{display:none}.mobile-toggle{display:block}.mobile-menu{display:grid;position:absolute;top:67px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:18px 24px;grid-gap:16px;gap:16px;box-shadow:0 12px 24px #0000000b}.mobile-menu a{padding:7px 0}.mobile-menu .button{margin-top:5px}.hero{padding-top:22px}.hero-grid{grid-template-columns:1fr;gap:22px}.hero-copy{padding:13px 0 0}.hero h1{font-size:3.05rem}.hero-copy>p{font-size:1rem}.hero-media{height:360px;border-radius:4px 72px 4px 4px}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center}.hero-actions .scroll-link{margin-left:0}.stat-band{grid-template-columns:1fr 1fr;row-gap:20px}.stat:nth-child(2){border:0}.stat:nth-child(3){padding-left:0}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:200px 150px 150px}.gallery-card:first-child{grid-column:span 2;grid-row:auto}.booking-grid,.location-grid,.stay-grid{grid-template-columns:1fr;gap:28px}.stay-intro{position:static}.amenity-grid{grid-template-columns:1fr}.booking-card{padding:22px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column}.cta{padding:64px 0}}@media(max-width:420px){.button{padding:13px 16px;font-size:.91rem}.form-grid{grid-template-columns:1fr}.field-wide{grid-column:auto}.hero-facts{gap:10px}.hero-media{height:290px}.stat{padding:0 12px}.gallery-grid{grid-template-rows:170px 125px 125px}.room{grid-template-columns:36px 1fr auto;gap:12px}}@media(prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.gallery-grid{grid-auto-rows:205px}.section-photo{position:relative;height:280px;overflow:hidden;border-radius:5px;margin-top:24px;background:var(--sage)}.section-photo img{object-fit:cover}.amenity-photos{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px;margin-top:20px}.amenity-photos .section-photo{height:300px;margin-top:0}.location-photo{height:360px;margin-top:0}@media(max-width:700px){.gallery-grid{grid-auto-rows:150px}.section-photo{height:240px}.amenity-photos{grid-template-columns:1fr}.amenity-photos .section-photo{height:250px}.location-photo{height:300px}}.nearby-list{margin-top:28px}.nearby-list h3{font-size:1.05rem;margin:0 0 12px}.nearby-card{display:grid;grid-template-columns:38px 1fr 18px;grid-gap:12px;gap:12px;align-items:center;padding:13px 14px;margin-top:9px;border:1px solid var(--line);border-radius:5px;background:#fff;transition:border-color .2s,transform .2s}.nearby-card:hover{border-color:var(--green);transform:translateY(-1px)}.nearby-card small,.nearby-card strong{display:block}.nearby-card strong{font-size:.92rem}.nearby-card small{color:var(--muted);font-size:.82rem;line-height:1.45;margin-top:3px}.nearby-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--cream);color:var(--green);font-size:1.2rem}.reviews{background:#f7f7f2}.reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:16px;gap:16px}.review-card{display:flex;flex-direction:column;align-items:flex-start;padding:24px;border:1px solid var(--line);border-radius:5px;background:white;min-height:245px}.review-top{display:flex;align-items:center;gap:12px}.review-avatar{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#e8ece4;color:var(--green);font-family:Manrope;font-weight:700}.review-top small,.review-top strong{display:block}.review-top small{margin-top:3px;color:var(--muted);font-size:.82rem}.review-stars{margin-top:18px;color:#a97932;letter-spacing:.12em;font-size:.95rem}.review-card blockquote{margin:12px 0 18px;color:#435047;line-height:1.7}.review-source{margin-top:auto;color:var(--muted);font-size:.76rem}.reviews-link{margin-top:28px}@media(max-width:900px){.reviews-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.reviews-grid{grid-template-columns:1fr}.review-card{min-height:0;padding:21px}}.quick-booking{display:grid;grid-template-columns:minmax(180px,1.2fr) minmax(150px,.8fr) minmax(150px,.8fr) auto;align-items:end;grid-gap:14px;gap:14px;padding:18px 20px;margin:18px 0 32px;background:#f7f7f2;border:1px solid var(--line);border-radius:6px}.quick-booking-copy{display:grid;grid-gap:4px;gap:4px;padding-bottom:10px}.quick-booking-copy strong{font-family:Manrope;font-size:1rem}.quick-booking label span,.quick-booking-copy span{font-size:.8rem;color:var(--muted)}.quick-booking label{display:grid;grid-gap:6px;gap:6px}.quick-booking input{width:100%;min-width:0;border:1px solid #d9ddd5;border-radius:4px;padding:10px 11px;background:#fff;color:var(--ink)}.quick-booking .button{white-space:nowrap;padding:12px 17px}@media(max-width:750px){.quick-booking{grid-template-columns:1fr 1fr}.quick-booking-copy{grid-column:1/-1;padding-bottom:0}.quick-booking .button{width:100%;grid-column:1/-1}}@media(max-width:420px){.quick-booking{gap:10px;padding:15px}.quick-booking label span{font-size:.75rem}.quick-booking input{font-size:.88rem;padding:9px 7px}}.booking-pay{opacity:1;cursor:pointer}.booking-pay:disabled{opacity:.66;cursor:not-allowed}.booking-pay:not(:disabled):hover{background:#1d392b;transform:translateY(-1px)}.booking-pay:disabled:hover{background:var(--green);transform:none}.availability-card{margin-top:28px;padding:22px;border:1px solid var(--line);border-radius:6px;background:#fff}.availability-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.availability-heading h3{margin:0;font-size:1.1rem}.availability-heading p{margin:5px 0 0;color:var(--muted);font-size:.85rem;line-height:1.5}.calendar-controls{display:flex;gap:6px}.calendar-controls button{width:34px;height:34px;border:1px solid var(--line);border-radius:50%;background:white;color:var(--green);font-size:1.25rem;cursor:pointer}.calendar-controls button:hover{background:var(--cream)}.calendar-month{text-align:center;text-transform:capitalize;font-weight:700;margin:20px 0 12px}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:5px;gap:5px;text-align:center}.calendar-weekday{font-size:.76rem;font-weight:700;color:var(--muted);padding:6px 0}.calendar-day{display:grid;place-items:center;aspect-ratio:1;border-radius:50%;font-size:.84rem;color:var(--ink);background:#edf1eb}.calendar-day.past{color:#aab0aa;background:#f6f6f3}.calendar-day.busy{color:#fff;background:#a16b58;text-decoration:line-through}.calendar-day.empty{background:transparent}.calendar-legend{display:flex;gap:16px;flex-wrap:wrap;margin-top:16px;color:var(--muted);font-size:.78rem}.calendar-legend span{display:flex;align-items:center;gap:6px}.legend-dot{width:9px;height:9px;border-radius:50%;background:#edf1eb}.busy-dot{background:#a16b58}.calendar-status{margin:14px 0 0;padding:10px 12px;border-radius:4px;background:var(--cream);color:#58645b;font-size:.8rem;line-height:1.55}.calendar-status.status-error{background:#fff0ec;color:#8c3d2a}.calendar-grid .calendar-day{width:100%;border:0;font-family:inherit;cursor:pointer;transition:background .15s,color .15s}.calendar-grid .calendar-day:hover:not(:disabled){background:#dce5d9}.calendar-grid .calendar-day:disabled{cursor:not-allowed}.calendar-grid .calendar-day.selected{background:var(--green);color:#fff;text-decoration:none}.calendar-grid .calendar-day.in-range:not(.selected){border-radius:4px;background:#dce5d9}.calendar-selection{margin:12px 0 0;color:var(--green);font-size:.86rem;font-weight:600;line-height:1.5}.booking-summary h3{font-family:Manrope,sans-serif;font-size:1.25rem;margin:0 0 18px}.booking-dates{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;grid-gap:12px;gap:12px;padding:15px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.booking-dates small,.booking-dates strong{display:block}.booking-dates small{font-size:.75rem;color:var(--muted);margin-bottom:5px}.booking-dates strong{font-size:.95rem}.guest-select{display:flex;justify-content:space-between;align-items:center;padding:15px 0;border-bottom:1px solid var(--line);font-size:.9rem;font-weight:600}.guest-select select{border:1px solid var(--line);border-radius:4px;padding:8px 10px;background:white;color:var(--ink)}.price-estimate{padding:16px 0}.price-estimate>div{display:flex;justify-content:space-between;gap:12px;margin:8px 0;color:var(--muted);font-size:.88rem}.price-estimate strong{color:var(--ink);white-space:nowrap}.price-estimate .price-total{padding-top:14px;border-top:1px solid var(--line);font-size:1rem;color:var(--ink)}.payment-note,.price-placeholder{font-size:.84rem;color:var(--muted);line-height:1.6}.booking-policy{border-radius:5px;background:var(--cream);padding:14px 16px;margin:14px 0}.booking-policy p{margin:0;color:#58645b;font-size:.82rem;line-height:1.6}.booking-policy p+p{margin-top:9px}.booking-pay{width:100%;opacity:.66;cursor:not-allowed}.booking-pay:hover{background:var(--green);transform:none}.payment-note{text-align:center;margin:10px 0 16px}.contact-before-booking{width:100%}.confirmation-section{min-height:calc(100vh - 78px);display:flex;align-items:center;background:linear-gradient(145deg,#f6f4ef,#fbfaf7 55%,#edf1eb);padding:64px 0}.confirmation-container{max-width:790px}.confirmation-card{position:relative;overflow:hidden;background:#fff;border:1px solid #e8e6df;border-radius:18px;padding:clamp(28px,6vw,64px);box-shadow:0 24px 70px #24352a12;text-align:center}.confirmation-card:before{position:absolute;inset:0 0 auto;height:6px;background:#c7a779;content:""}.confirmation-card.is-confirmed:before{background:#3e6349}.confirmation-card.is-cancelled:before{background:#a16b58}.confirmation-icon{display:grid;place-items:center;width:66px;height:66px;margin:0 auto 20px;border-radius:50%;background:#f5f0e7;color:#8c714c;font-size:2.2rem;font-weight:700}.confirmation-icon.is-confirmed{background:#eaf1e9;color:#31553b}.confirmation-icon.is-cancelled{background:#f8ece8;color:#9a4f3d}.confirmation-card>.eyebrow{margin:0 0 10px}.confirmation-status{margin:0 0 16px;color:#8b7556;font-size:.7rem;font-weight:800;letter-spacing:.14em}.confirmation-status.is-confirmed{color:#527359}.confirmation-status.is-cancelled{color:#a16b58}.confirmation-card h1{max-width:600px;margin:0 auto 14px;font-size:clamp(1.9rem,5vw,3rem);line-height:1.08;letter-spacing:-.04em}.confirmation-lead{max-width:590px;margin:0 auto;color:var(--muted);font-size:1rem;line-height:1.75}.confirmation-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:1px;gap:1px;margin:30px 0;background:#e9e8e2;border:1px solid #e9e8e2;border-radius:12px;overflow:hidden;text-align:left}.confirmation-details>div{display:grid;grid-gap:7px;gap:7px;padding:16px 19px;background:#fcfbf9}.confirmation-details span{color:var(--muted);font-size:.78rem}.confirmation-details strong{font-size:.94rem}.confirmation-next{margin:24px 0 0;padding:18px 20px;border-radius:10px;background:#f5f4ef;text-align:left}.confirmation-next strong{color:var(--green);font-family:Manrope,sans-serif}.confirmation-next p{margin:7px 0 0;color:#58645b;font-size:.88rem;line-height:1.65}.confirmation-actions{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap;margin-top:26px}.confirmation-contact,.confirmation-home{min-width:210px}.confirmation-home{border-color:#d8ddd5}.confirmation-retry{width:100%;border:0;background:transparent;color:var(--green);font-size:.86rem;font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.confirmation-wait{display:inline-flex;align-items:center;gap:10px;color:var(--muted);font-size:.9rem}.confirmation-spinner{width:17px;height:17px;border:2px solid #d8ddd5;border-top:2px solid var(--green);border-radius:50%;animation:confirmation-spin .75s linear infinite}@keyframes confirmation-spin{to{transform:rotate(1turn)}}.confirmation-phone{margin:20px 0 0;color:#7d857e;font-size:.78rem}@media(max-width:700px){.hero{padding-top:0}.hero-grid{gap:18px}.hero-media{order:-1;height:min(90vw,380px);border-radius:4px 58px 4px 4px}.hero-copy{order:0;padding-top:8px}}@media(max-width:600px){.confirmation-section{min-height:calc(100vh - 66px);padding:28px 0}.confirmation-card{padding:30px 20px;border-radius:14px}.confirmation-details{margin:22px 0}.confirmation-details>div{padding:13px 12px}.confirmation-details strong{font-size:.86rem}.confirmation-actions{display:grid}.confirmation-contact,.confirmation-home{width:100%;min-width:0}.confirmation-next{padding:16px}.confirmation-phone{margin-top:17px}}.booking-card .booking-pay{opacity:1;cursor:pointer}.booking-card .booking-pay:disabled{opacity:.66;cursor:not-allowed}.booking-card .booking-pay:not(:disabled):hover{background:#1d392b;transform:translateY(-1px)}.booking-card .booking-pay:disabled:hover{background:var(--green);transform:none}.admin-page{min-height:100vh;padding:48px 20px 72px;background:#f6f5f0;color:var(--ink)}.admin-wrap{width:min(100%,1000px);margin:0 auto}.admin-back{display:inline-block;margin-bottom:24px;color:var(--green);font-weight:700}.admin-dashboard,.admin-login-card{padding:clamp(24px,5vw,48px);border:1px solid #e4e3dc;border-radius:12px;background:#fff;box-shadow:0 18px 45px #24352a0a}.admin-login-card{max-width:520px;margin:7vh auto 0}.admin-eyebrow{color:#667766;font-size:.72rem;font-weight:800;letter-spacing:.15em}.admin-heading h1,.admin-login-card h1{margin:10px 0;font-family:Manrope,sans-serif;font-size:clamp(2rem,5vw,2.8rem);letter-spacing:-.04em}.admin-heading p,.admin-login-card>p{color:var(--muted);line-height:1.65}.admin-login-form{display:grid;grid-gap:11px;gap:11px;margin-top:28px}.admin-login-form label{font-size:.87rem;font-weight:700}.admin-login-form input{width:100%;padding:13px 14px;border:1px solid #d9ddd5;border-radius:5px}.admin-login-form .button{margin-top:8px}.admin-setup{margin-top:24px;padding:16px;border-radius:6px;background:#f7f5ee;color:#465447;font-size:.88rem;line-height:1.65}.admin-setup p{margin:7px 0 0}.admin-setup code{padding:2px 5px;border-radius:3px;background:#eae9e1}.admin-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:28px}.admin-heading p{max-width:600px;margin-bottom:0}.admin-actions{display:flex;gap:9px;flex-wrap:wrap}.admin-cancel,.admin-secondary{padding:10px 14px;border:1px solid #d9ddd5;border-radius:5px;background:#fff;color:#344438;font-weight:700;cursor:pointer}.admin-secondary:hover{background:#f6f7f3}.admin-reservations{display:grid;grid-gap:12px;gap:12px}.admin-reservation{display:grid;grid-template-columns:minmax(210px,.8fr) minmax(220px,1fr) auto;grid-gap:20px;gap:20px;align-items:center;padding:18px;border:1px solid #e5e5de;border-radius:7px}.admin-reservation-dates{display:grid;grid-template-columns:1fr 1fr;grid-gap:4px 12px;gap:4px 12px}.admin-reservation-dates span{color:var(--muted);font-size:.75rem}.admin-reservation-dates strong{font-size:.92rem}.admin-reservation-info{display:flex;flex-direction:column;align-items:flex-start;gap:6px;color:#58645b;font-size:.82rem;overflow-wrap:anywhere}.admin-status{display:inline-flex;padding:4px 9px;border-radius:99px;font-size:.75rem;font-weight:800}.status-confirmed{background:#e9f1e8;color:#315d3a}.status-pending{background:#fff2dc;color:#806124}.status-cancelled{background:#f1f0ec;color:#686d67}.admin-reservation-info small{color:#806124;line-height:1.5}.admin-cancel{border-color:#e3c8c1;color:#8a493a;white-space:nowrap}.admin-cancel:hover:not(:disabled){background:#fbefec}.admin-cancel:disabled{opacity:.6;cursor:wait}.admin-empty,.admin-footnote,.admin-loading{margin-top:24px;color:var(--muted);font-size:.86rem;line-height:1.6}.admin-empty{padding:28px;border:1px dashed #d9ddd5;border-radius:6px;text-align:center}.admin-error,.admin-notice{margin:14px 0 20px;padding:12px 14px;border-radius:5px;font-size:.88rem;line-height:1.55}.admin-notice{background:#e9f1e8;color:#315d3a}.admin-error{background:#fff0ec;color:#8a493a}@media(max-width:700px){.admin-page{padding:26px 14px 48px}.admin-heading{display:grid}.admin-actions{width:100%}.admin-reservation{grid-template-columns:1fr;gap:12px}.admin-cancel{width:100%}.admin-login-card{margin-top:4vh}}.footer-host-link{margin-top:14px;text-align:right;font-size:.72rem}.footer-host-link a{color:#879489;font-size:inherit;opacity:.72}.footer-host-link a:focus-visible,.footer-host-link a:hover{color:#e8eee7;opacity:1}