:root{--ink:#25342b;--green:#344638;--button:#272727;--button-hover:#141414;--muted:#788078;--line:#e5e8e0;--paper:#fafaf7;--tint:#f0f2eb;--accent:#b5bf9c;--radius:22px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;scroll-behavior:smooth;scroll-padding-top:100px}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer}button:disabled{opacity:.3;cursor:default}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{border:0}h1,h2,h3,p{margin:0}svg{display:block;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}i{font-style:normal}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #9aa976;outline-offset:5px}.container{max-width:1240px;margin:0 auto;width:calc(100% - 112px)}.header{height:105px;max-width:1440px;margin:auto;padding:0 48px;display:flex;align-items:center;gap:40px}.brand{flex-shrink:0}.header nav{display:flex;gap:34px;margin-left:auto;margin-right:auto;font-size:14px;color:#5c665d}.header nav a{padding:12px 0;position:relative}.header nav a:after{content:"";position:absolute;bottom:4px;left:0;width:0;height:1px;background:var(--green);transition:width .2s}.header nav a:hover:after{width:100%}.button{background:var(--button);border-radius:12px;display:inline-flex;align-items:center;justify-content:center;gap:22px;padding:19px 24px;color:white;font-size:14px;font-weight:500;line-height:1.3;transition:background .2s,transform .2s;white-space:nowrap}.button:hover{background:var(--button-hover);transform:translateY(-1px)}.button.small{padding:14px 19px;font-size:13px}.button.light{background:var(--button);color:#fff;padding:17px 22px}.button.light:hover{background:var(--button-hover)}.button.full{width:100%;justify-content:center}.button span[aria-hidden]{font-size:19px;line-height:1}.icon-button{display:grid;place-items:center;width:40px;height:40px;min-width:40px;border-radius:50%;background:transparent;font-size:26px;font-weight:300}.icon-button:hover{background:#e9ede4}.menu-toggle{display:none}.hero-wrap{max-width:1440px;margin:auto;padding:0 24px;position:relative}.hero{height:620px;border-radius:26px;overflow:hidden;position:relative;background:#627262}.hero-img{width:100%;height:100%;object-fit:cover;object-position:center 57%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,26,15,.64),rgba(10,22,13,.25) 45%,transparent 75%),linear-gradient(0deg,rgba(10,24,16,.35),transparent 40%)}.hero-copy{position:absolute;top:92px;left:64px;color:#fff;max-width:650px}.eyebrow{font-size:10px;letter-spacing:2.4px;font-weight:600;display:flex;gap:9px;align-items:center;line-height:1.5}.eyebrow.green{color:#798469}.location-dot{width:5px;height:5px;background:#f5f6ed;border-radius:50%}h1{font-size:clamp(46px,4.8vw,72px);line-height:1.08;font-weight:450;letter-spacing:-3px;margin:22px 0}h2{font-size:clamp(32px,3vw,46px);letter-spacing:-1.7px;font-weight:450;line-height:1.15}h3{font-size:32px;font-weight:450;letter-spacing:-1px;line-height:1.15}.hero-copy p{font-size:16px;line-height:1.8;color:#e4e9df;margin-bottom:29px}.hero-bottom{position:absolute;bottom:86px;left:64px;right:35px;display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#eef3e8}.hero-bottom>span{display:flex;align-items:center;gap:10px}.tiny-house{font-size:24px}.image-note{color:#f0f4eb;background:rgba(0,0,0,.22);padding:9px 11px;border-radius:8px;backdrop-filter:blur(8px);font-size:10px;display:flex;align-items:center;gap:7px}.search-bar{position:relative;z-index:2;background:#fff;border:1px solid #eceee7;border-radius:18px;box-shadow:0 12px 35px #26382d0c;max-width:1120px;width:calc(100% - 112px);margin:-47px auto 0;padding:12px;display:grid;grid-template-columns:1fr 1fr 1fr auto;align-items:center}.search-field{position:relative;background:transparent;display:flex;gap:13px;align-items:center;padding:12px 22px;text-align:left;min-width:0;border-right:1px solid var(--line);border-radius:0}.search-field:hover{background:#f8f9f5;border-radius:9px}.search-field>span:nth-child(2){display:grid;gap:8px}.search-field .field-icon{color:#909988;flex-shrink:0}.field-label{color:#8c9488;font-size:9px;font-weight:600;letter-spacing:1.4px}.search-field strong{font-size:13px;font-weight:500;white-space:nowrap}.search-submit{margin-left:13px;min-height:59px;font-size:13px;padding:18px 22px}.search-submit svg{width:19px}.search-note{font-size:10px;color:#8a9185;display:flex;align-items:center;justify-content:center;gap:7px;padding:15px 0}.search-note svg{height:12px;width:12px}.amenity-strip{display:flex;justify-content:space-between;gap:25px;padding:38px 15px 43px;border-bottom:1px solid var(--line);color:#65725f;font-size:12px}.amenity-strip>div{display:flex;align-items:center;gap:11px}.amenity-strip svg{width:21px;height:21px}.section{padding-top:95px;padding-bottom:90px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:40px;gap:40px}.section-heading .eyebrow{margin-bottom:17px}.section-heading>p{font-size:14px;line-height:1.9;color:var(--muted);width:355px;max-width:40%;padding-bottom:4px}.stay-layout{display:grid;grid-template-columns:1.04fr 1fr;gap:65px;align-items:center}.stay-photo{height:465px;position:relative;overflow:hidden;border-radius:20px}.stay-photo>img{width:100%;height:100%;object-fit:cover;object-position:center}.photo-tag{position:absolute;left:20px;bottom:20px;display:flex;gap:8px;align-items:center;background:#ffffffde;backdrop-filter:blur(15px);padding:12px 15px;border-radius:9px;font-size:11px}.photo-tag svg{width:16px;height:16px}.round-photo{position:absolute;right:17px;bottom:20px;background:#272727e8;color:#fff;border-radius:50%;padding:11px}.round-photo svg{width:17px;height:17px}.stay-details .eyebrow{font-size:9px;margin-bottom:15px}.stay-details h3{font-size:33px;margin-bottom:18px}.stay-details>p{font-size:13px;color:var(--muted);line-height:1.85;max-width:425px}.stay-specs{display:grid;grid-template-columns:1fr 1fr;gap:20px 25px;margin:26px 0 30px;font-size:11px;color:#59674f}.stay-specs span{display:flex;align-items:center;gap:10px}.stay-specs svg{width:19px;height:19px;color:#839073}.stay-price{border-top:1px solid var(--line);padding-top:24px;display:flex;align-items:center;justify-content:space-between;gap:15px}.stay-price small{display:block;font-size:9px;color:var(--muted);margin-bottom:6px}.stay-price strong{font-size:28px;letter-spacing:-1px;font-weight:450}.stay-price strong span{font-size:11px;letter-spacing:0;color:var(--muted)}.stay-price .button{padding:15px 18px;font-size:12px;gap:15px}.stay-details>p.price-note{font-size:9px;line-height:1.7;color:#8b9285;margin-top:12px}.gallery-section{background:#f0f2ec;padding:75px 0 60px}.text-button{border:0;background:none;display:inline-flex;align-items:center;gap:22px;padding:8px 0;font-size:12px;color:var(--button);white-space:nowrap}.text-button:hover{color:#555}.text-button>span{font-size:20px}.gallery-grid{display:grid;grid-template-columns:1fr 1fr 1fr;grid-template-rows:220px 220px;gap:14px}.gallery-item{position:relative;overflow:hidden;border-radius:16px;background:#cbd1c2;text-align:left;padding:0}.gallery-item.tall{grid-row:span 2}.gallery-item.wide{grid-column:span 2}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.gallery-item:hover img{transform:scale(1.035)}.gallery-item.tall img{object-position:center 57%}.gallery-item>span{position:absolute;bottom:0;left:0;right:0;padding:30px 18px 18px;background:linear-gradient(transparent,#17241ba3);color:#fff;font-size:12px;display:flex;justify-content:space-between;align-items:center}.gallery-item i{font-size:20px}.gallery-caption{display:flex;justify-content:space-between;font-size:10px;color:#8c9484;padding-top:18px}.quote-section{padding:95px 0 65px;text-align:center;display:grid;justify-items:center}.quote-section h2{font-size:34px;letter-spacing:-1.2px;line-height:1.35;margin:22px 0 25px}.quote-symbol{color:#a4af92}.quote-symbol svg{width:100px;height:35px}.surroundings{padding-top:35px}.places{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.place-card{border-radius:17px;overflow:hidden;background:white;border:1px solid #e6e8df;transition:transform .25s}.place-card:hover{transform:translateY(-4px)}.place-body{padding:22px 24px 26px}.place-body small{font-size:8px;letter-spacing:1.8px;color:#8b957e}.place-body h3{font-size:20px;letter-spacing:-.6px;margin:11px 0}.place-body p{font-size:11px;line-height:1.8;color:var(--muted);max-width:260px}.planner-section{background:#e9ede3;padding:85px 0}.planner-layout{display:grid;grid-template-columns:1fr 420px;gap:100px;align-items:center}.planner-layout h2{margin:22px 0}.planner-layout>div>p{font-size:13px;line-height:1.9;color:#7b8572;max-width:390px}.planner-contact{display:flex;align-items:center;gap:16px;margin:28px 0 8px}.planner-contact>span{background:#dfe5d6;padding:12px;border-radius:50%}.planner-contact small{font-size:10px;color:#89917e;display:block;margin-bottom:6px}.planner-contact a{font-size:20px;letter-spacing:-.5px}.planner-layout>.plan-card{border-radius:20px;padding:28px;background:#fff;box-shadow:0 15px 45px #34463808}.plan-card-top{display:flex;align-items:center;gap:10px;font-size:16px;padding-bottom:24px;border-bottom:1px solid var(--line)}.plan-icon{color:#9aab87}.pill{margin-left:auto;font-size:8px;letter-spacing:1.5px;padding:6px 8px;border-radius:5px;background:#f3f5ef;color:#8a977b}.plan-date{display:flex;align-items:center;justify-content:space-between;gap:15px;width:100%;background:#fafbf8;border:1px solid var(--line);border-radius:10px;padding:16px 14px;text-align:left;margin:22px 0 12px}.plan-date small{font-size:8px;letter-spacing:1.2px;color:#8a9480;display:block;margin-bottom:9px}.plan-date strong{font-size:12px;font-weight:500}.plan-date svg{width:16px;color:#9da88f}.plan-guests{width:100%;display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:10px;background:white;padding:14px;font-size:12px}.plan-guests svg{width:17px;height:17px;color:#9aa78c}.plan-guests>span:last-child{margin-left:auto;font-size:10px;color:#98a08f}.calculation{display:flex;justify-content:space-between;margin:24px 0 10px;font-size:12px}.calculation strong{font-size:21px;font-weight:500;letter-spacing:-.5px}.price-note{font-size:9px;color:#959c8e;line-height:1.8;margin:10px 0 20px}.plan-card .button{font-size:12px;padding:17px 18px}.plan-foot{display:flex;justify-content:center;gap:6px;font-size:9px;color:#939c88;margin-top:14px}.plan-foot svg{width:12px;height:12px}.faq{display:grid;grid-template-columns:1fr 1.2fr;gap:100px}.faq h2{font-size:37px;margin-top:20px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0;font-size:13px;cursor:pointer;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{font-size:22px;font-weight:300;color:#9da68f}.faq-list details[open] summary>span{transform:rotate(45deg)}.faq-list p{font-size:12px;line-height:1.9;padding:0 25px 22px 0;color:var(--muted)}.faq-list p a{text-decoration:underline}.contact-section{display:grid;grid-template-columns:1fr 1fr;gap:100px;padding:55px 0 65px;border-top:1px solid var(--line)}.contact-section h2{font-size:34px;margin:18px 0 15px}.contact-section p{font-size:12px;color:var(--muted);margin-bottom:24px}.contact-section .button{font-size:11px;padding:15px 18px}.contact-links{padding-top:20px}.contact-links>a{display:flex;align-items:center;gap:18px;padding:22px 0;border-bottom:1px solid var(--line)}.contact-links>a>span:first-child{color:#8b977c}.contact-links>a>span:last-child{margin-left:auto;color:#8b977c}.contact-links small{font-size:8px;letter-spacing:1.8px;color:#929c86;display:block;margin-bottom:7px}.contact-links strong{font-size:17px;font-weight:450;letter-spacing:-.3px}.footer{display:flex;align-items:center;gap:45px;padding:30px 0 35px;border-top:1px solid var(--line);color:#98a08e;font-size:10px}.footer>div{margin-left:auto;display:flex;gap:24px;align-items:center}.plain{background:none;color:inherit;padding:0;font-size:inherit}.plain:hover{text-decoration:underline}.mobile-book{display:none}.skip{position:absolute;left:-9999px;top:8px;z-index:99;padding:12px;background:white}.skip:focus{left:15px}dialog{border:1px solid var(--line);padding:30px;color:var(--ink);border-radius:22px;box-shadow:0 30px 130px #112d2340;max-height:calc(100dvh - 50px);overflow:auto}dialog::backdrop{background:#17281d66;backdrop-filter:blur(7px)}body:has(dialog[open]){overflow:hidden}.dialog-top{display:flex;align-items:flex-start;justify-content:space-between;gap:25px}.dialog-top .eyebrow{font-size:8px;margin-bottom:10px}.dialog-top h3{font-size:26px}.dialog-top .icon-button{margin-top:-8px;margin-right:-8px}.muted{font-size:11px;color:var(--muted);line-height:1.6}.calendar-dialog{width:710px}.calendar-dialog>.muted{margin-top:12px}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;padding:15px 0 5px;color:#8b957e;font-size:10px}.calendars{display:grid;grid-template-columns:1fr 1fr;gap:32px}.calendar-month h4{text-align:center;font-size:13px;font-weight:500;margin:6px 0 20px;text-transform:capitalize}.weekdays,.days{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;gap:3px}.weekdays{color:#a1aa95;font-size:9px;margin-bottom:9px}.weekdays span{padding:8px 0}.days button,.days>span{aspect-ratio:1;display:grid;place-items:center;border-radius:8px;background:transparent;font-size:12px;min-width:0}.days button:not(:disabled):hover{background:#e9eddf}.days button.today{box-shadow:inset 0 0 0 1px #c5ceb8}.days button.selected{background:var(--button);color:white}.days button.in-range{background:#e9eee0;border-radius:0}.date-summary{background:#f2f5eb;border-radius:9px;padding:14px;text-align:center;margin-top:23px;font-size:12px;min-height:44px}.calendar-disclaimer{font-size:9px;color:#929b86;line-height:1.7;margin-top:10px;text-align:center}.calendar-footer{display:flex;justify-content:space-between;align-items:center;margin-top:20px}.calendar-footer .button{font-size:12px;padding:14px 18px}.booking-dialog{width:470px}.booking-property{display:flex;align-items:center;gap:15px;margin:28px 0}.booking-property img{width:77px;height:68px;object-fit:cover;border-radius:10px}.booking-property strong{display:block;font-size:14px;font-weight:500;margin-bottom:8px}.booking-property span{font-size:10px;color:var(--muted)}#booking-summary{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0;display:grid;gap:13px;font-size:12px}#booking-summary>div{display:flex;justify-content:space-between}#booking-summary span{color:var(--muted)}.booking-total{display:flex;align-items:center;justify-content:space-between;margin-top:22px;font-size:12px}.booking-total strong{font-size:29px;font-weight:450;letter-spacing:-1px}.booking-disclaimer{font-size:10px;line-height:1.8;color:var(--muted);margin:14px 0 24px}.direct-call{font-size:10px;display:flex;justify-content:center;margin-top:10px}.guest-popover{position:absolute;right:230px;top:90px;width:310px;padding:25px;background:#fff;border:1px solid var(--line);border-radius:17px;box-shadow:0 18px 40px #1b37251a}.guest-popover>div:not(#child-ages){position:relative;padding:5px 0 23px}.guest-popover strong{font-size:12px;display:block}.guest-popover small{display:block;font-size:9px;color:var(--muted);margin-top:5px}.stepper{position:absolute;right:0;top:2px;display:flex;gap:12px;align-items:center;font-size:12px}.stepper button{border:1px solid #dce2d4;border-radius:50%;height:29px;width:29px;background:white;font-size:17px}.guest-popover>.muted{font-size:9px;margin:4px 0 15px}#child-ages label{display:flex;align-items:center;justify-content:space-between;font-size:11px;margin-bottom:12px}#child-ages select{padding:6px;border:1px solid var(--line);border-radius:7px;font-size:11px;background:white}.lightbox{background:#18231d;color:#f4f4e9;width:1100px;border:0;padding:20px}.lightbox-top{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#aeb7a4}.lightbox .icon-button:hover{background:#ffffff15}.lightbox-image{height:min(62vh,640px);display:flex;align-items:center;justify-content:center}.lightbox-image img{height:100%;object-fit:contain;max-width:100%;min-width:0}.lightbox #photo-caption{text-align:center;font-size:12px;padding:20px 0 15px}.thumbnails{display:flex;justify-content:center;gap:8px}.thumbnails button{padding:3px;border-radius:7px;background:none;border:1px solid transparent}.thumbnails button.active{border-color:#b7c5a4}.thumbnails img{width:48px;height:42px;object-fit:cover;border-radius:4px}.info-dialog{width:460px}.info-dialog p{margin-top:20px;font-size:13px;line-height:1.9;color:var(--muted)}.toast{position:fixed;z-index:1000;bottom:30px;left:50%;transform:translateX(-50%);padding:15px 22px;border-radius:12px;background:var(--green);color:white;font-size:12px;box-shadow:0 6px 40px #0002;max-width:90%;text-align:center}[hidden]{display:none!important}
@media(min-width:1450px){.hero{height:650px}.hero-copy{top:105px}}
@media(max-width:1100px){.container{width:calc(100% - 64px)}.header{padding:0 32px;gap:25px;height:90px}.header nav{gap:24px;font-size:12px}.brand img{width:190px}.header>.button{font-size:11px;padding:13px 14px;gap:12px}.hero-copy{left:45px;top:90px}.hero{height:570px}.hero-bottom{left:45px}.search-bar{width:calc(100% - 50px)}.search-field{padding:10px 15px;gap:9px}.search-field strong{font-size:12px}.search-submit{font-size:11px;padding:18px 15px;gap:12px}.stay-layout{gap:35px}.stay-photo{height:450px}.stay-price{flex-wrap:wrap}.stay-specs{gap:16px 12px}.planner-layout{gap:55px;grid-template-columns:1fr 380px}.faq,.contact-section{gap:65px}.guest-popover{right:190px}.gallery-grid{grid-template-rows:200px 200px}.section{padding-top:75px;padding-bottom:75px}}
@media(max-width:760px){:root{scroll-padding-top:70px}.container{width:calc(100% - 40px)}.header{height:78px;padding:0 22px;justify-content:space-between;gap:15px}.header .brand img{width:185px}.header>.button{margin-left:auto;font-size:10px;padding:12px;gap:10px}.header>.button span{display:none}.menu-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:25px;min-width:25px}.menu-toggle>span{width:20px;height:1px;background:var(--green)}.header nav{display:none;position:absolute;z-index:5;top:74px;left:15px;right:15px;background:var(--paper);padding:20px;border:1px solid var(--line);border-radius:15px;box-shadow:0 15px 35px #23352818;gap:10px}.header nav.open{display:flex;flex-direction:column}.hero-wrap{padding:0 12px}.hero{height:570px;border-radius:18px}.hero-img{object-position:61% center}.hero-shade{background:linear-gradient(180deg,#10261c55,transparent 45%),linear-gradient(90deg,#10261c88,#12251c18),linear-gradient(0deg,#10261c66,transparent 40%)}.hero-copy{top:45px;left:27px;right:20px}.hero-copy .eyebrow{font-size:8px;letter-spacing:1.9px}h1{font-size:46px;letter-spacing:-2px;line-height:1.08;margin:20px 0}.hero-copy p{font-size:13px;line-height:1.8;margin-bottom:22px}.hero-copy .button{font-size:11px;padding:14px 17px;gap:22px}.hero-bottom{bottom:75px;left:27px;right:22px;flex-direction:column;align-items:flex-start;gap:13px;font-size:9px}.image-note{font-size:8px;padding:7px 8px}.hero-bottom .tiny-house{font-size:19px}.search-bar{width:calc(100% - 30px);grid-template-columns:1fr 1fr;margin-top:-40px;padding:13px;border-radius:15px;row-gap:10px}.search-field{padding:10px 8px;gap:9px}.search-field:nth-child(2){border:0}.search-field:nth-child(3){border:0}.search-field strong{font-size:11px}.search-field .field-label{font-size:8px;letter-spacing:1px}.search-field svg{height:17px;width:17px}.search-field .search-submit{min-height:47px;font-size:10px;margin:0;padding:12px;gap:10px;border-radius:9px}.search-submit svg{width:15px}.search-note{font-size:8px;gap:4px;padding:13px 0}.search-note svg{width:10px;height:10px}.amenity-strip{display:grid;grid-template-columns:1fr 1fr;gap:25px 20px;padding:25px 5px 32px;font-size:10px}.amenity-strip>div{gap:9px}.amenity-strip svg{width:18px;height:18px}.section{padding-top:57px;padding-bottom:55px}.section-heading{display:block;margin-bottom:28px}.section-heading>p{max-width:100%;width:auto;font-size:12px;line-height:1.9;margin-top:22px;max-width:380px}h2{font-size:34px;letter-spacing:-1.3px}.eyebrow{font-size:8px;letter-spacing:2px}.section-heading .eyebrow{margin-bottom:14px}.stay-layout{display:flex;flex-direction:column;gap:28px}.stay-photo{height:330px;width:100%}.photo-tag{font-size:9px;left:15px;bottom:15px;padding:11px}.round-photo{right:15px;bottom:15px;padding:9px}.stay-details{width:100%}.stay-details .eyebrow{display:none}.stay-details h3{font-size:29px;margin-bottom:14px}.stay-details>p{font-size:12px;max-width:none}.stay-specs{font-size:11px;margin:24px 0;gap:20px}.stay-price{flex-wrap:nowrap;padding-top:22px}.stay-price .button{font-size:10px;padding:14px;gap:10px}.stay-price strong{font-size:27px}.stay-price small{font-size:8px}.stay-price strong span{font-size:9px}.stay-details>p.price-note{font-size:8px}.gallery-section .section-heading{display:flex;align-items:flex-end;gap:10px}.gallery-section h2{font-size:28px}.gallery-section .text-button{font-size:9px;gap:9px;width:90px;white-space:normal;line-height:1.6;padding:0}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:230px 165px;gap:10px}.gallery-item.tall{grid-row:span 1}.gallery-item.wide{grid-column:span 1}.gallery-item>span{font-size:9px;padding:25px 11px 12px;gap:10px}.gallery-item i{font-size:16px}.gallery-caption{font-size:8px;gap:15px;line-height:1.7}.gallery-caption>span:last-child{text-align:right}.quote-section{padding:60px 0 40px}.quote-section h2{font-size:25px;line-height:1.4;letter-spacing:-.7px}.quote-section .eyebrow{font-size:7px}.quote-symbol svg{width:80px;height:30px}.surroundings{padding-top:25px}.places{gap:15px;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:15px;margin-right:-20px;scrollbar-width:thin}.place-card{min-width:265px;max-width:265px;scroll-snap-align:start}.place-body{padding:19px 20px 22px}.place-body h3{font-size:19px}.place-body p{font-size:11px}.planner-section{padding:55px 0}.planner-layout{display:flex;flex-direction:column;gap:35px;align-items:stretch}.planner-layout h2{font-size:33px;margin:18px 0}.planner-layout>div>p{font-size:12px}.planner-contact{margin-top:23px}.planner-contact a{font-size:19px}.planner-layout>.plan-card{padding:23px;max-width:430px;width:100%;align-self:center}.plan-date{padding:15px 12px}.plan-date strong{font-size:12px}.plan-card-top{font-size:15px}.faq{display:block}.faq h2{font-size:31px;line-height:1.2;margin:15px 0 25px}.faq h2 br{display:none}.faq-list summary{font-size:12px;padding:20px 0}.faq-list p{font-size:11px}.contact-section{display:block;padding:40px 0 25px}.contact-section h2{font-size:31px}.contact-links{padding-top:20px}.contact-links>a{padding:20px 0}.contact-links strong{font-size:15px}.footer{flex-wrap:wrap;gap:16px;padding:25px 0 100px}.footer .brand img{width:165px}.footer>p{margin-left:auto;font-size:8px}.footer>div{width:100%;margin-top:5px;justify-content:space-between;font-size:8px}.mobile-book{position:fixed;left:20px;right:20px;bottom:15px;z-index:3;display:flex;justify-content:center;font-size:12px;padding:17px 20px;box-shadow:0 5px 25px #102b2426;border:1px solid #ffffff25;transition:opacity .2s}.mobile-book.hidden{opacity:0;pointer-events:none}dialog{max-width:calc(100% - 24px);max-height:calc(100dvh - 35px);border-radius:18px;padding:24px}.dialog-top h3{font-size:23px}.calendar-dialog{width:385px}.calendars{display:block}.calendar-month:nth-child(2){display:none}.calendar-toolbar{padding-top:10px}.calendar-month h4{margin-bottom:12px}.days button,.days>span{aspect-ratio:1.1;font-size:13px}.calendar-footer .button{font-size:10px;padding:13px;gap:10px}.calendar-footer .text-button{font-size:10px}.date-summary{font-size:11px;margin-top:18px}.calendar-dialog>.muted{font-size:10px}.calendar-disclaimer{font-size:8px}.booking-dialog{width:410px}.booking-property{margin:23px 0}.booking-property img{width:65px;height:65px}.booking-property strong{font-size:13px}.booking-dialog .button{font-size:12px;padding:17px}.guest-popover{width:min(300px,calc(100% - 10px));right:5px;top:165px;padding:22px}.guest-popover .button{font-size:11px}.lightbox{padding:12px;max-width:calc(100% - 14px);width:100%;background:#18231d}.lightbox-image{height:56vh}.lightbox-image .icon-button{width:28px;min-width:28px;font-size:23px}.lightbox-image img{max-width:100%}.thumbnails{gap:3px;flex-wrap:wrap}.thumbnails img{width:30px;height:30px}.lightbox #photo-caption{font-size:10px}.toast{bottom:90px;font-size:11px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*{transition:none!important}}

/* Photographs of nearby places. */
.place-photo{height:205px;overflow:hidden;background:#e5e8e0}
.place-photo img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.place-card:last-child .place-photo img{object-position:50% 0%}
.place-card:hover .place-photo img{transform:scale(1.035)}
.photo-credits{margin-top:18px;color:#788078;font-size:9px;line-height:1.9}
.photo-credits summary{display:inline-block;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.photo-credits p{padding-top:9px;max-width:860px}
.photo-credits a{text-decoration:underline;text-underline-offset:2px}
.calendar-nav{font-size:11px;padding:10px 0;min-width:70px}
.calendar-nav:last-child{justify-content:flex-end}
.lightbox-controls{display:flex;justify-content:space-between;gap:12px;margin:16px 0 0}
.gallery-nav{padding:10px 16px;font-size:11px;border-radius:8px;background:#2d2d2d;color:#f9f9f6;transition:background .2s}
.gallery-nav:hover{background:#414141}

/* Brand loading cover, shared by initial page loads and section navigation. */
.page-loader{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;background:#fafaf7;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .24s ease,visibility 0s .24s}
.is-loading .page-loader{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .15s ease,visibility 0s}
.loader-brand{display:flex;flex-direction:column;align-items:center;gap:28px;padding:25px;transform:translateY(-10px)}
.loader-brand img{width:252px;height:auto;max-width:65vw}
.loader-brand p{font-size:8px;font-weight:500;letter-spacing:2.5px;color:#8c9287}
.loader-track{width:132px;height:2px;background:#e4e7df;border-radius:5px;overflow:hidden}
.loader-track span{display:block;width:45%;height:100%;background:#272727;border-radius:5px;animation:loader-travel 1.1s ease-in-out infinite}
@keyframes loader-travel{0%{transform:translateX(-110%)}100%{transform:translateX(330%)}}
@media(max-width:760px){.place-photo{height:165px}.photo-credits{font-size:8px;margin-top:12px}.calendar-toolbar>span{font-size:9px}.calendar-nav{font-size:10px;min-width:55px}.lightbox-controls{margin-top:12px}.gallery-nav{font-size:10px;padding:9px 13px}.loader-brand img{width:225px}.loader-brand p{font-size:7px;letter-spacing:2px}}
@media(prefers-reduced-motion:reduce){.page-loader{transition:none}.loader-track span{animation:none;width:100%}.place-photo img{transition:none}}

/* The property's verified Google Maps location. */
.contact-section{row-gap:35px}
.location-copy{scroll-margin-top:35px}
.location-copy>p{max-width:420px;line-height:1.85;margin-bottom:21px}
.location-address{display:flex;gap:13px;align-items:flex-start;margin:0 0 25px}
.location-address>span{color:#7c8970;padding-top:2px}
.location-address strong{display:block;font-size:13px;font-weight:500;margin-bottom:8px}
.location-address div>span{display:block;font-size:11px;line-height:1.8;color:var(--muted)}
.location-address small{display:block;font-size:10px;color:#8a947f;margin-top:7px}
.property-map{grid-column:1/-1;border:1px solid var(--line);border-radius:20px;overflow:hidden;background:#edf0e7}
.property-map iframe{display:block;width:100%;height:440px;border:0;background:#edf0e7}
.map-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:23px 26px;background:#f4f6ef}
.map-footer strong{display:block;font-size:15px;font-weight:500;letter-spacing:-.2px}
.map-footer div>span{display:block;font-size:10px;line-height:1.8;color:var(--muted);margin-top:6px}
.map-footer .button{font-size:11px;padding:15px 21px}
@media(max-width:760px){.location-copy{scroll-margin-top:20px}.location-copy>p{font-size:12px}.location-address strong{font-size:12px}.location-address div>span{font-size:10px}.location-address small{font-size:9px}.property-map{margin-top:30px;border-radius:16px}.property-map iframe{height:360px}.map-footer{display:block;padding:21px}.map-footer strong{font-size:14px}.map-footer div>span{font-size:9px}.map-footer .button{margin-top:17px;width:100%;font-size:11px}}

