:root{--green:#3F4D34;--green-deep:#283627;--green-soft:#596b51;--sand:#BFAC82;--earth:#895D2C;--ash:#DDDDDD;--paper:#F5F2EB;--white:#FFFFFF;--ink:#252c24;--muted:#6c746b;--border:#e4e4dc;--serif:'Cormorant Garamond',Georgia,serif;--sans:Poppins,'Segoe UI',sans-serif;--radius:4px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:var(--sans);font-weight:400;line-height:1.75;font-size:14px}body.modal-open{overflow:hidden}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:400}h1,h2{font-family:var(--serif);line-height:1.03;letter-spacing:-.015em}h1 em,h2 em,h3 em{font-weight:400}p{line-height:1.9}.shell{width:min(1230px,calc(100% - 96px));margin:0 auto}.section{padding-top:120px;padding-bottom:120px}.eyebrow{font-size:10px;letter-spacing:.23em;color:var(--earth);font-weight:600;display:flex;align-items:center;gap:24px;margin-bottom:22px}.eyebrow.light{color:#e0d3b9}.eyebrow .line{height:1px;width:60px;background:var(--sand)}h2{font-size:clamp(48px,5.3vw,83px);margin-bottom:30px;color:var(--green)}.btn{border:1px solid transparent;display:inline-flex;align-items:center;justify-content:space-between;gap:22px;min-height:52px;padding:12px 27px;letter-spacing:.055em;font-size:11px;font-weight:600;transition:transform .2s,background .2s,color .2s}.btn:hover:not(:disabled){transform:translateY(-2px)}.btn:disabled{opacity:.48;cursor:not-allowed}.btn-primary{background:var(--green);color:white}.btn-primary:hover:not(:disabled){background:#2b3d2b}.btn-sand{background:var(--sand);color:var(--green-deep)}.btn-sand:hover{background:#d5c29e}.btn-outline{background:transparent;border-color:#8b9987;color:var(--green)}.btn.full{width:100%;justify-content:center}.text-link{display:inline-flex;gap:25px;border-bottom:1px solid #b7bda8;padding:0 0 7px;color:var(--green);font-weight:600;font-size:12px}.text-link:hover{color:var(--earth)}
.demo-ribbon{height:27px;background:var(--green-deep);color:#efebdf;text-align:center;font-size:9px;letter-spacing:.13em;display:flex;align-items:center;justify-content:center;gap:9px}.ribbon-dot{width:5px;height:5px;border-radius:50%;background:#c6b58a}.site-header{height:91px;position:relative;z-index:20;background:#fff}.header-inner{display:flex;align-items:center;justify-content:space-between;height:100%;gap:20px}.brand{display:flex;align-items:center;gap:12px;min-width:165px}.brand img{width:36px;height:50px;object-fit:contain}.brand span{font-family:Georgia,serif;font-size:18px;line-height:1.1;color:var(--green);letter-spacing:.09em}.brand small{display:block;font-family:var(--sans);font-size:7px;letter-spacing:.23em;font-weight:500;margin-top:7px;color:var(--earth)}.desktop-nav{display:flex;gap:35px;align-items:center}.desktop-nav a{font-size:11px;font-weight:500;white-space:nowrap;transition:color .2s}.desktop-nav a:hover{color:var(--earth)}.header-actions{display:flex;align-items:center;gap:16px}.admin-link{border:0;background:none;color:#7b8278;font-size:10px;white-space:nowrap}.admin-link:hover{text-decoration:underline}.top-reserve{min-height:43px;padding:10px 17px}.mobile-menu-toggle,.mobile-nav{display:none}.hero-visual{height:min(690px,68vw);min-height:530px;position:relative;overflow:hidden;background:#637666}.hero-photo,.hero-shade{position:absolute;inset:0;width:100%;height:100%}.hero-photo{object-fit:cover;object-position:center 51%;animation:slow-zoom 18s ease-out both}.hero-shade{background:linear-gradient(90deg,rgba(14,24,18,.77),rgba(20,37,25,.38) 51%,rgba(17,31,24,.09) 100%),linear-gradient(0deg,rgba(12,20,15,.32),transparent 25%)}.hero-top-note{position:absolute;top:42px;right:max(48px,calc((100% - 1230px)/2));font-size:10px;letter-spacing:.24em;color:#fff;opacity:.84}.hero-content{position:relative;color:#fff;z-index:2;padding-top:142px}.hero-content h1{font-size:clamp(67px,8.3vw,126px);max-width:830px;margin:0 0 20px;color:#fff}.hero-content h1 em{display:block;color:#e4d5b1}.hero-content>p:not(.eyebrow){max-width:440px;margin-bottom:32px;font-weight:300;line-height:1.85;color:#f4efe5;font-size:14px}.hero-bottom{position:absolute;bottom:28px;left:0;right:0;color:#eee9dc;display:flex;justify-content:space-between;align-items:center;z-index:2;font-size:9px;letter-spacing:.20em}.hero-scroll span{font-size:18px;margin-left:10px}.quick-facts{display:flex;align-items:stretch;padding:24px 0 23px;border-bottom:1px solid var(--border);gap:0}.quick-facts>div{display:flex;gap:15px;align-items:center;flex:1;border-right:1px solid var(--border);padding:0 24px}.quick-facts>div:first-child{padding-left:0}.quick-facts>div b{display:block;font-size:11px;color:var(--green);font-weight:600}.quick-facts>div small{font-size:10px;color:#879087}.fact-symbol{font-size:24px;color:var(--sand)}.quick-facts>a{display:flex;align-items:center;gap:18px;font-size:11px;font-weight:600;color:var(--earth);padding-left:28px;white-space:nowrap}
.intro{display:grid;grid-template-columns:1fr 470px;align-items:center;gap:120px}.intro-copy h2{max-width:640px}.intro-copy>p:not(.eyebrow){color:#687165;max-width:535px;font-weight:300;font-size:13px}.intro-copy>.text-link{margin-top:20px}.intro-photo{height:590px;position:relative}.picture-frame:before{content:"";position:absolute;inset:-23px 27px 24px -27px;background:var(--paper);z-index:-1}.intro-photo>img{width:100%;height:100%;object-fit:cover}.photo-tag{position:absolute;bottom:0;left:0;background:var(--green);color:#ecede3;padding:17px 21px;font-size:9px;letter-spacing:.17em}.corner-a{position:absolute;right:-27px;top:-33px;font:90px var(--serif);color:var(--sand);z-index:-1}.cabin-section{background:var(--paper)}.section-heading.center{text-align:center;max-width:780px;margin:0 auto 66px}.section-heading.center .eyebrow{justify-content:center}.section-heading.center h2{margin-bottom:16px}.section-heading.center>p:not(.eyebrow){color:var(--muted);font-size:13px}.amenities{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #d8d6c9;border-bottom:1px solid #d8d6c9}.amenities article{padding:43px 27px 40px;border-right:1px solid #d8d6c9}.amenities article:first-child{padding-left:0}.amenities article:last-child{border-right:0}.amenity-icon{display:block;font-family:Georgia,serif;color:var(--earth);font-size:39px;line-height:1;margin-bottom:25px}.amenities h3{font-family:var(--serif);font-size:29px;color:var(--green);margin-bottom:8px}.amenities p{font-size:11px;color:var(--muted);margin-bottom:0;line-height:1.85}.split-heading{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:42px}.split-heading h2{max-width:720px;margin:0}.split-heading>p{max-width:320px;font-size:12px;color:var(--muted);margin:0 0 10px}.gallery-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:15px;height:480px}.gallery-tile{position:relative;border:0;padding:0;overflow:hidden;background:var(--green);text-align:left;min-width:0}.gallery-tile img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease,filter .3s}.gallery-tile:hover img{transform:scale(1.06);filter:brightness(.8)}.gallery-tile:after{content:"";position:absolute;inset:60% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.45))}.gallery-tile span{position:absolute;z-index:2;bottom:20px;left:23px;color:#fff;font-family:var(--serif);font-size:28px}.gallery-caption{font-size:10px;color:#7c837a;margin:12px 0 0}.quote-band{background:var(--green);padding:80px 0}.quote-band .shell{display:flex;gap:55px;align-items:center;justify-content:center}.quote-band span{color:var(--sand);font-size:33px}.quote-band p{max-width:820px;font:clamp(35px,4vw,58px)/1.14 var(--serif);text-align:center;color:#f6f3e9;margin:0}.quote-band em{color:#d6c69e}.booking-section{background:#f6f5f0}.booking-head{margin-bottom:46px!important}.booking-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:22px;align-items:start}.calendar-panel{border:1px solid #e5e2d9;background:#fff;padding:32px 34px 24px;box-shadow:0 12px 55px rgba(34,43,29,.045)}.calendar-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}.calendar-heading h3{font-family:var(--serif);font-size:39px;color:var(--green);margin:0;line-height:1}.panel-mini{font-size:9px;letter-spacing:.23em;font-weight:600;color:var(--earth);margin:0 0 8px}.panel-mini.light{color:var(--sand)}.cal-nav{display:flex;gap:7px}.cal-nav button{width:39px;height:39px;background:#f6f5f0;border:1px solid #e6e8e0;color:var(--green);font-size:19px}.cal-nav button:hover{background:#e1e9d9}.cal-nav button:disabled{opacity:.3;cursor:default}.calendar-legend{display:flex;gap:20px;flex-wrap:wrap;margin-bottom:25px;font-size:10px;color:#768075}.calendar-legend span{display:flex;align-items:center;gap:7px}.dot{width:8px;height:8px;border-radius:100%;display:inline-block}.dot.available{background:#9fb498}.dot.taken{background:#9baba5}.dot.blocked{background:#895D2C}.dot.hold{background:#d7b05b}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.calendar-weekdays span{text-align:center;font-size:10px;color:#889088;padding:7px 0}.cal-day{height:69px;border:1px solid transparent;background:#faf9f5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:#3a4436;position:relative}.cal-day .n{font-size:12px;font-weight:600}.cal-day .p{font-size:9px;color:#788678}.cal-day:hover:not(:disabled){border-color:var(--green);background:#eef1e8}.cal-day.selected,.cal-day.in-range{background:var(--green);color:#fff}.cal-day.selected .p,.cal-day.in-range .p{color:#e8e0cf}.cal-day.end-selected{background:#6d795f;color:#fff}.cal-day.is-taken,.cal-day.is-blocked,.cal-day.is-held{cursor:not-allowed}.cal-day.is-taken{background:#e8eeea;color:#a0aca3}.cal-day.is-blocked{background:#f1e9e0;color:#a58b74}.cal-day.is-held{background:#f8efd9;color:#a38d64}.cal-day.is-past{opacity:.33;cursor:not-allowed}.cal-day.is-empty{background:none;pointer-events:none}.cal-day.is-taken:after,.cal-day.is-blocked:after,.cal-day.is-held:after{content:"";width:16px;height:1px;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-40deg);background:currentColor;opacity:.55}.cal-day:disabled{cursor:not-allowed}.cal-day .p{white-space:nowrap}.calendar-help{min-height:38px;color:var(--muted);font-size:10px;margin-top:16px}.calendar-help.warning{color:#8a5c2d}.calendar-footer{border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;gap:10px;padding-top:20px;font-size:10px;color:#7c867b}.calendar-footer strong{color:var(--green)}.calendar-footer button{border:0;background:transparent;color:var(--earth);font-size:10px}.reservation-card{border:1px solid #dee4da;background:#fff;box-shadow:0 12px 55px rgba(34,43,29,.06)}.reservation-header{background:var(--green);padding:33px 30px 31px;color:#fff;position:relative;overflow:hidden}.reservation-star{position:absolute;right:-6px;top:-31px;font-size:140px;color:#55664d;line-height:1}.reservation-header h3{position:relative;font:39px/1.05 var(--serif);margin:10px 0 0;color:#fff}.reservation-content{padding:26px 28px 30px}.date-pair{display:grid;grid-template-columns:1fr 1fr;padding-bottom:18px;border-bottom:1px solid var(--border);gap:12px}.date-pair>div:nth-child(2){padding-left:18px;border-left:1px solid var(--border)}.date-pair small{display:block;font-size:9px;letter-spacing:.13em;color:#879083}.date-pair strong{display:block;font-size:12px;color:var(--green);min-height:27px}.date-pair span{font-size:10px;color:#9a9e92}.guest-row{display:flex;justify-content:space-between;align-items:center;padding:19px 0;border-bottom:1px solid var(--border);font-size:11px;color:var(--green);font-weight:500}.guest-row select{border:0;background:white;color:var(--green);text-align:right;padding:5px}.price-list{padding:20px 0 10px;min-height:76px}.price-list p{font-size:11px;color:#8b9387}.price-line{display:flex;justify-content:space-between;font-size:11px;color:#758171;margin-bottom:7px}.price-line b{color:var(--ink);font-weight:500}.price-total{padding:21px 0 24px;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--border)}.price-total span{font-size:11px;color:#667362}.price-total strong{font-size:24px;color:var(--green);font-weight:600}.reservation-submit{width:100%;justify-content:space-between}.payment-hint{font-size:9px;color:#969b92;text-align:center;margin:12px 0 0;line-height:1.8}.checkin-note{font-size:10px;color:#516046;background:#f1f3eb;padding:12px 14px;line-height:1.75;margin-bottom:13px}.location-section{display:grid;grid-template-columns:1.16fr 1fr;gap:95px;align-items:center}.location-photo{height:515px}.location-photo img{width:100%;height:100%;object-fit:cover}.location-copy h2{margin-bottom:22px}.location-copy>p:not(.eyebrow){color:var(--muted);max-width:440px;font-size:13px}.map-placeholder{padding:18px;background:#f2f4ee;display:flex;gap:17px;align-items:center;margin:23px 0}.map-placeholder>span{font-family:var(--serif);font-size:40px;color:var(--green)}.map-placeholder b{display:block;font-size:12px;color:var(--green)}.map-placeholder small{display:block;font-size:10px;color:var(--muted)}.faq-section{background:var(--paper)}.faq-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:100px}.faq-layout>div:first-child p:not(.eyebrow){max-width:330px;color:var(--muted);font-size:13px}.faq-list details{border-bottom:1px solid #d9dccf;padding:18px 0}.faq-list details:first-child{border-top:1px solid #d9dccf}.faq-list summary{list-style:none;display:flex;justify-content:space-between;gap:15px;cursor:pointer;font-weight:500;font-size:13px;color:var(--green);padding:4px 0}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';font-size:21px;font-weight:300}.faq-list details[open] summary:after{content:'−'}.faq-list details p{font-size:11px;color:var(--muted);padding-right:30px;margin:14px 0 0}.footer{background:var(--green-deep);color:#ece9dd;padding-top:65px}.footer-main{display:grid;grid-template-columns:2fr 1fr 1.3fr;gap:95px;padding-bottom:55px}.footer-brand img{width:75px;filter:brightness(0) saturate(100%) invert(82%) sepia(18%) saturate(572%) hue-rotate(356deg) brightness(90%);margin-bottom:18px}.footer-brand h3{font:40px/1.1 var(--serif);margin:0 0 8px}.footer-brand p{font-size:11px;color:#c0c9b9}.footer-col{display:flex;flex-direction:column;align-items:start;gap:10px}.footer-col b{letter-spacing:.17em;font-size:10px;margin:2px 0 12px;color:var(--sand)}.footer-col a,.footer-col button,.footer-col span{font-size:11px;color:#d0d8ca;background:none;border:0;padding:0}.footer-col button{text-align:left}.footer-col a:hover,.footer-col button:hover{color:white;text-decoration:underline}.footer-bottom{border-top:1px solid #50604c;display:flex;justify-content:space-between;padding:19px 0;color:#bdc7b8;font-size:9px}.mobile-reserve{display:none}
/* Dialogs and local admin */
dialog{border:0;box-shadow:0 30px 95px rgba(10,24,11,.30);max-height:92vh;overflow:auto;color:var(--ink)}dialog::backdrop{background:rgba(20,29,19,.68);backdrop-filter:blur(5px)}.dialog{width:min(520px,calc(100% - 24px));padding:38px}.modal-top{display:flex;justify-content:space-between;gap:10px;align-items:center}.modal-top .eyebrow{margin:0}.close-dialog{background:#f0f0ea;border:0;width:36px;height:36px;color:var(--green);font-size:19px}.dialog h2{font-size:56px;margin:21px 0 20px}.modal-recap{display:flex;flex-direction:column;gap:7px;padding:17px;background:#f4f2e9;margin-bottom:18px;color:var(--green);font-size:12px}.modal-recap>div{display:flex;justify-content:space-between}.dialog form{display:grid;gap:13px}.dialog form label:not(.agree){font-size:11px;color:var(--green);font-weight:500;display:flex;flex-direction:column;gap:5px}.dialog input:not([type=checkbox]),.dialog select,.admin-form input{border:1px solid #d9dfd2;background:#fff;color:#303a30;padding:11px 13px;width:100%;min-height:42px;border-radius:0;outline-color:var(--green)}.agree{display:flex;gap:10px;font-size:10px;color:#758071;line-height:1.65;margin:4px 0 8px}.agree input{width:17px;flex:none;accent-color:var(--green)}.success-mark{display:grid;place-items:center;background:#dce9d7;color:var(--green);border-radius:50%;width:67px;height:67px;font-size:31px;margin-top:23px}.success-text{font-size:12px;color:#697666}.success-info{background:#f2f5ef;padding:18px 19px;font-size:11px;color:var(--green);line-height:2;margin-bottom:17px}.success-info>div{display:flex;justify-content:space-between}.success-info strong{color:var(--ink)}#open-admin-from-success{margin-top:9px}.tiny-note{font-size:10px;color:#92998e;text-align:center;margin:12px 0 0}.gallery-dialog{width:min(1000px,96vw);padding:0;background:#1a251d;color:#fff}.gallery-dialog img{width:100%;max-height:78vh;object-fit:contain}.gallery-dialog p{text-align:center;font-size:10px;letter-spacing:.1em;color:#c8d4c4;padding:5px 14px}.gallery-close{position:absolute;right:15px;top:15px;width:39px;height:39px;background:rgba(255,255,255,.9);border:0;font-size:19px}.admin-dialog{width:min(1120px,calc(100% - 24px));padding:34px 40px}.admin-top{display:flex;justify-content:space-between;gap:16px}.admin-top .eyebrow{margin-bottom:12px}.admin-top h2{font-size:55px;margin:0}.admin-top p{font-size:11px;color:var(--muted);margin:0 0 15px}.admin-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:22px 0 28px}.admin-stats>div{background:var(--paper);padding:14px 16px}.admin-stats small{font-size:10px;color:#71806d;display:block}.admin-stats strong{display:block;font-size:23px;color:var(--green);margin-top:4px}.admin-columns{display:grid;grid-template-columns:280px 1fr;gap:40px}.admin-dialog h3{font-size:17px;font-weight:600;color:var(--green);margin:6px 0 14px}.admin-side h3:not(:first-child){margin-top:25px}.admin-form{display:flex;flex-direction:column;gap:9px}.admin-form label{display:flex;flex-direction:column;font-size:11px;color:#576b54;gap:5px}.admin-form .btn{min-height:39px}.admin-list-top{display:flex;align-items:center;justify-content:space-between;gap:16px}.admin-list-top button{font-size:10px;border:0;color:#945f37;background:none}.admin-bookings,.admin-blocks,.admin-holidays{display:flex;flex-direction:column;gap:9px;max-height:420px;overflow:auto;margin-bottom:30px}.admin-entry{padding:13px 15px;background:var(--paper);border:1px solid #e4e7df;display:flex;justify-content:space-between;gap:12px;align-items:center}.admin-entry b{font-size:11px;color:var(--green)}.admin-entry p{font-size:10px;color:var(--muted);margin:0}.admin-entry small{color:var(--earth);font-size:10px;display:block}.admin-entry-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.admin-entry-actions button{border:1px solid #cbd5c7;background:#fff;color:var(--green);font-size:10px;padding:6px 9px}.admin-entry-actions button.danger{border-color:#dab8ac;color:#9e4d3b}.admin-disclaimer{background:#fff3e6;color:#875a35;font-size:10px;padding:14px 16px;margin:20px 0 0}.empty-admin{font-size:11px;color:#8c9288;background:#f7f7f2;padding:20px}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,30px);opacity:0;pointer-events:none;background:#27392c;color:white;padding:12px 20px;font-size:12px;z-index:300;box-shadow:0 20px 45px #1b28192c;transition:transform .25s,opacity .25s;text-align:center;max-width:90vw}.toast.show{transform:translate(-50%,0);opacity:1}@keyframes slow-zoom{from{transform:scale(1.045)}to{transform:scale(1)}}
@media(max-width:1120px){.desktop-nav{gap:19px}.intro{grid-template-columns:1fr 42%;gap:68px}.quick-facts>div{padding:0 12px}.booking-layout{grid-template-columns:minmax(0,1fr) 320px}.reservation-content{padding:23px 22px}.calendar-panel{padding:28px 24px}.amenities article{padding:32px 18px}.footer-main{gap:35px}}
@media(max-width:850px){.shell{width:min(100% - 38px,640px)}.section{padding-top:78px;padding-bottom:78px}.site-header{height:72px}.desktop-nav,.admin-link,.top-reserve{display:none}.brand img{height:43px;width:31px}.brand span{font-size:16px}.mobile-menu-toggle{display:flex;flex-direction:column;gap:5px;border:0;background:none;padding:10px}.mobile-menu-toggle span{display:block;width:23px;height:2px;background:var(--green)}.mobile-nav{position:absolute;top:100%;left:0;right:0;padding:18px 23px 25px;background:#fff;box-shadow:0 20px 30px #1113;flex-direction:column;gap:6px}.mobile-nav:not([hidden]){display:flex}.mobile-nav a,.mobile-nav button{display:block;text-align:left;border:0;background:none;padding:10px;font-size:13px;color:var(--green)}.hero-visual{height:620px;min-height:600px}.hero-content{padding-top:175px}.hero-content h1{font-size:clamp(66px,12vw,95px)}.hero-top-note{top:26px;right:20px;letter-spacing:.13em;font-size:8px}.hero-bottom{font-size:8px}.quick-facts{display:grid;grid-template-columns:1fr 1fr;gap:17px;padding:27px 0}.quick-facts>div{padding:0;border:0}.quick-facts>a{padding:0;grid-column:span 2;border-top:1px solid var(--border);padding-top:10px}.intro{grid-template-columns:1fr;gap:52px}.intro-photo{height:490px;max-width:540px;margin:0 auto;width:100%}.picture-frame:before{inset:-16px 20px 16px -15px}.intro h2{font-size:65px}.amenities{grid-template-columns:repeat(2,1fr)}.amenities article:nth-child(2){border-right:0}.amenities article:nth-child(-n+2){border-bottom:1px solid #d8d6c9}.amenities article:nth-child(3){padding-left:0}.split-heading{display:block}.split-heading>p{max-width:530px;margin-top:20px}.gallery-grid{grid-template-columns:repeat(2,1fr);grid-template-rows:360px 260px;height:auto}.gallery-tile:first-child{grid-column:span 2}.quote-band{padding:65px 0}.quote-band .shell{gap:12px}.quote-band p{font-size:46px}.quote-band span{font-size:18px}.booking-layout{grid-template-columns:1fr}.booking-head{margin-bottom:35px!important}.location-section{grid-template-columns:1fr;gap:40px}.location-photo{height:360px}.faq-layout{grid-template-columns:1fr;gap:30px}.faq-layout>div:first-child p:not(.eyebrow){max-width:540px}.footer-main{grid-template-columns:1.4fr 1fr;gap:35px}.footer-col:last-child{grid-column:span 2}.mobile-reserve{position:fixed;bottom:0;left:0;right:0;height:56px;background:var(--green);color:white;display:flex;justify-content:space-between;align-items:center;padding:0 25px;z-index:15;font-size:12px;font-weight:500;box-shadow:0 -5px 30px #0002}body{padding-bottom:55px}.admin-dialog{padding:24px}.admin-columns{grid-template-columns:1fr;gap:24px}.admin-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:540px){.demo-ribbon{font-size:7px;letter-spacing:.04em}.hero-visual{height:570px;min-height:550px}.hero-content{padding-top:139px}.hero-content h1{font-size:68px}.hero-content>p:not(.eyebrow){font-size:12px}.hero-top-note{top:23px;left:20px;right:auto}.hero-scroll{display:none}.quick-facts{gap:15px}.quick-facts>div{gap:9px}.quick-facts>div b{font-size:10px}.quick-facts>div small{font-size:9px}.intro h2,.section-heading h2,.location h2,.faq-layout h2{font-size:52px}.intro-photo{height:380px}.corner-a{right:0}.amenities article{padding:28px 12px 28px 0}.amenities article:nth-child(2),.amenities article:nth-child(4){padding-left:13px}.amenities h3{font-size:25px}.gallery-grid{grid-template-rows:280px 210px}.gallery-tile span{font-size:23px;left:12px;bottom:12px}.quote-band p{font-size:35px}.calendar-panel{padding:20px 12px}.calendar-heading{padding:0 5px}.calendar-heading h3{font-size:34px}.calendar-legend{gap:8px;font-size:9px}.calendar-weekdays,.calendar-grid{gap:2px}.cal-day{height:61px}.cal-day .n{font-size:11px}.cal-day .p{font-size:8px}.calendar-footer{flex-wrap:wrap}.reservation-card{max-width:100%}.location-photo{height:260px}.footer-main{grid-template-columns:1fr 1fr;gap:20px}.footer-brand{grid-column:span 2}.footer-col:last-child{grid-column:span 2}.footer-bottom{gap:15px;flex-direction:column}.dialog{padding:25px 20px}.dialog h2{font-size:46px}.admin-top h2{font-size:40px}.admin-stats{margin:12px 0 22px}.admin-entry{align-items:flex-start;flex-direction:column}.admin-entry-actions{justify-content:flex-start}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* v1.1: ocupacion fija de la cabana para parejas */
.guest-row .guest-fixed{color:var(--green);font-weight:600;text-align:right;}

/* Public preview; no payments or simulated back office */
.coming-prices{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:880px;margin:28px auto 24px}.coming-prices>div{border:1px solid #d9d4c8;background:#fff;padding:25px 18px;text-align:center;display:flex;flex-direction:column;gap:8px}.coming-prices span{font:500 13px Poppins, sans-serif;color:#53614b}.coming-prices strong{font:500 36px Georgia,serif;color:#3f4d34}.coming-prices small{color:#7a756a}.coming-note{max-width:770px;margin:0 auto;padding:22px 30px;background:#e9e5d7;color:#3f4d34;text-align:center}.coming-note strong{font:500 23px Georgia,serif}.coming-note p{margin:12px 0 0;font-size:13px;line-height:1.7}.gallery-dialog{max-width:min(92vw,1050px)}.mobile-nav.is-open{display:flex!important}@media(max-width:700px){.coming-prices{grid-template-columns:1fr;gap:10px}.coming-prices>div{padding:16px}.coming-note{padding:19px}.coming-prices strong{font-size:30px}}
