@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{--paper:#f8f6ef;--up:#fffdf8;--ink:#233f34;--muted:#657267;--line:#d7d8cc;--green:#2c503e;--accent:#d7a992;--soft:#e9eddf;--room-paper:var(--paper);--room-paper-up:var(--up);--room-ink:var(--ink);--room-ink-2:var(--muted);--room-rule:var(--line);font:14px/1.6 'DM Sans',sans-serif;color:var(--room-ink);background:var(--room-paper);scroll-behavior:smooth;scroll-padding-top:35px}
@media(prefers-color-scheme:dark){:root{--paper:#172a22;--up:#20382e;--ink:#f1f0e6;--muted:#b9c7b9;--line:#405448;--green:#c7dbb8;--accent:#d7a992;--soft:#263e2e}}
*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{color:inherit;cursor:pointer}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #b0805c;outline-offset:4px}button{transition:transform .18s,background .18s}button:hover{transform:translateY(-2px)}button:active{transform:translateY(0)}img{max-width:100%;display:block}h1,h2,h3,p,figure{margin:0}h1,h2{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400;letter-spacing:-.035em;line-height:1.02}h1 em,h2 em{font-family:Georgia,serif;font-weight:400;font-size:.9em}h2{font-size:clamp(37px,4.7vw,64px)}.preview-bar{padding:7px 20px;background:var(--room-paper-up);border-bottom:1px solid var(--room-rule);display:flex;justify-content:center;align-items:center;gap:7px;color:var(--room-ink-2);font-size:10px;letter-spacing:.03em}.preview-dot{width:5px;height:5px;border-radius:50%;background:#bc8b5b}.masthead{max-width:1440px;margin:auto;padding:29px 5%;display:flex;justify-content:space-between;align-items:center;gap:24px}.logo{display:flex;align-items:center;gap:12px;letter-spacing:.16em;font-size:15px;line-height:1.25}.logo svg{width:34px;height:40px;fill:none;stroke:var(--room-ink);stroke-width:1.4}.logo small{display:block;font-size:8px;letter-spacing:.21em;margin-top:6px}.masthead nav{display:flex;align-items:center;gap:28px;font-size:11px}.nav-link{padding:0;border:0;background:none;font-size:11px}.nav-book{border:1px solid var(--room-rule);padding:10px 16px;border-radius:2px}.nav-book span{margin-left:15px}.hero{max-width:1440px;padding:20px 5% 55px;margin:auto;display:grid;grid-template-columns:1fr 1.13fr;gap:4.5%;min-height:650px;align-items:center}.eyebrow{font-size:9px;letter-spacing:.19em;font-weight:600;margin-bottom:23px;color:var(--room-ink-2)}h1{font-size:clamp(48px,6.2vw,89px)}.hero-description{max-width:300px;margin:25px 0;color:var(--room-ink-2);font-size:13px;line-height:1.85}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:25px;padding:14px 20px;border:1px solid var(--room-rule);border-radius:2px;font-size:11px;font-weight:500;cursor:pointer;transition:transform .2s}.button:hover{transform:translateY(-2px)}.primary{background:var(--room-act,var(--green));color:var(--room-act-ink,var(--paper));border-color:transparent}.outline{background:transparent}.hero-foot{display:flex;align-items:center;gap:12px;color:var(--room-ink-2);font-size:9px;margin-top:30px}.hero-foot i{height:3px;width:3px;border-radius:50%;background:var(--room-ink-2)}.hero-photo{position:relative;align-self:stretch;min-height:540px}.hero-photo>img{height:100%;width:100%;object-fit:cover;object-position:58% center;border-radius:120px 2px 2px 2px}.hero-photo figcaption{position:absolute;bottom:0;left:0;right:0;padding:75px 25px 22px;display:flex;align-items:end;justify-content:space-between;gap:20px;color:white;background:linear-gradient(transparent,#0b281bc9);font-size:8px;letter-spacing:.14em}.hero-photo figcaption button{border:1px solid #ffffff8a;color:white;background:#ffffff15;backdrop-filter:blur(5px);font-size:10px;padding:8px 11px;white-space:nowrap}.hero-photo figcaption button span{padding-left:10px}.section-pad{padding:65px 5%;max-width:1440px;margin:auto}.house-section{display:grid;grid-template-columns:1fr 1.13fr;gap:4.5%;border-top:1px solid var(--room-rule)}.house-copy{font-size:13px;line-height:1.9;color:var(--room-ink-2);max-width:530px;padding-top:15px}.house-copy>p+p{margin-top:15px}.amenities{display:grid;grid-template-columns:1fr 1fr;gap:16px 20px;border-top:1px solid var(--room-rule);margin-top:25px;padding-top:23px;font-size:10px;color:var(--room-ink)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:30px}.photo-section{padding-top:35px}.photo-story{display:grid;grid-template-columns:1.5fr 1fr;grid-template-rows:210px 210px;gap:17px}.photo-tile{position:relative;border:0;background:var(--soft);padding:0;text-align:left;overflow:hidden}.photo-large{grid-row:span 2}.photo-tile img{width:100%;height:100%;object-fit:cover;transition:transform .65s}.photo-tile:hover img{transform:scale(1.035)}.photo-tile>span{position:absolute;bottom:0;left:0;right:0;color:white;padding:40px 20px 15px;background:linear-gradient(transparent,#12251bc4);font-family:Georgia,serif;font-size:19px}.local-section{display:grid;grid-template-columns:1.05fr 1fr;gap:10%;align-items:center;padding-top:20px}.local-image img{aspect-ratio:1.05;object-fit:cover;border-radius:2px 2px 90px 2px;width:100%}.local-copy>p:not(.eyebrow){margin-top:22px;color:var(--room-ink-2);font-size:13px;max-width:350px}.local-copy p.small{font-size:11px}.text-link{display:inline-block;margin-top:22px;border-bottom:1px solid var(--room-rule);font-size:10px;padding-bottom:5px}.stay-section{background:color-mix(in srgb,var(--room-ink) 5%,var(--room-paper));display:grid;grid-template-columns:1fr 1fr;gap:10%;margin-top:30px;padding-top:70px;padding-bottom:70px}.stay-intro>p:not(.eyebrow){color:var(--room-ink-2);font-size:12px;max-width:320px;margin-top:22px}.steps{margin-top:35px}.steps>div{display:flex;gap:18px;align-items:center;padding:12px 0;border-bottom:1px solid var(--room-rule);max-width:320px}.steps span{font:italic 24px Georgia,serif;color:var(--room-ink-2)}.steps p{font-size:11px}.stay-intro p.preview-note{font-size:10px;line-height:1.7;border-left:2px solid #c49b7b;padding-left:12px;margin-top:30px}.booking-panel{background:var(--room-paper-up);padding:26px;border:1px solid var(--room-rule);border-radius:3px;box-shadow:0 12px 45px #142b1c08}.calendar-heading{display:flex;justify-content:space-between;align-items:center;font:20px Georgia,serif}.calendar-heading>div{display:flex;gap:6px}.calendar-heading button{padding:4px 8px;border:0;background:transparent;font-size:15px}.calendar-status{font-size:9px;color:var(--room-ink-2);margin:9px 0 14px}.calendar-status>span{display:inline-block;width:5px;height:5px;background:#b8925c;border-radius:50%;margin-right:4px}.weekdays,.calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.weekdays{text-align:center;font-size:9px;color:var(--room-ink-2);margin-bottom:9px}.calendar button{font-size:10px;border:1px solid transparent;border-radius:50%;aspect-ratio:1;max-height:36px;background:transparent;color:var(--room-ink);width:100%;padding:0}.calendar button:hover{border-color:var(--room-rule);background:color-mix(in srgb,var(--room-ink) 5%,var(--room-paper-up))}.calendar button:disabled{opacity:.25;cursor:default;transform:none}.calendar button.in-range{background:color-mix(in srgb,var(--room-act,var(--green)) 13%,var(--room-paper-up));border-radius:2px}.calendar button.endpoint{background:var(--room-act,var(--green));color:var(--room-act-ink,var(--paper))}.calendar button.is-today{text-decoration:underline;text-underline-offset:3px}.calendar-hint{font-size:9px;color:var(--room-ink-2);margin-top:10px;border-bottom:1px solid var(--room-rule);padding-bottom:15px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}.full{grid-column:1/-1}label{font-size:9px;display:block}label>span{color:var(--room-ink-2)}input,select,textarea{width:100%;min-width:0;background:var(--room-paper);color:var(--room-ink);border:1px solid var(--room-rule);border-radius:2px;padding:10px 9px;font-size:11px;margin-top:5px}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:var(--room-ink-2);opacity:.8}.request-summary{padding:15px 0;font-size:11px}.submit{width:100%}.submit:disabled{opacity:.6;cursor:wait}.request-status{font-size:9px;text-align:center;color:var(--room-ink-2);margin-top:10px}.request-status.error{color:var(--room-ember,#b44b31)}.request-status.success{font-size:11px;text-align:left;border-left:2px solid var(--room-moss,var(--green));padding-left:12px;line-height:1.7}.good-to-know{display:grid;grid-template-columns:1fr 1fr;gap:10%}.good-to-know h2{font-size:43px}.faq-list details{border-bottom:1px solid var(--room-rule);padding:17px 0}.faq-list details:first-child{padding-top:0}.faq-list summary{cursor:pointer;font-size:12px;list-style:none;display:flex;justify-content:space-between;gap:15px}.faq-list summary::after{content:'＋';color:var(--room-ink-2)}.faq-list details[open] summary::after{content:'−'}.faq-list details p{font-size:11px;color:var(--room-ink-2);line-height:1.9;margin-top:13px}.site-footer{border-top:1px solid var(--room-rule);max-width:1440px;margin:auto;padding:32px 5%;display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap}.footer-name{font:26px 'Libre Caslon Display',Georgia,serif}.footer-name span{font:9px 'DM Sans',sans-serif;display:block;margin-top:7px;color:var(--room-ink-2)}.site-footer>div{display:flex;flex-wrap:wrap;gap:14px 24px;align-items:center;font-size:10px}.site-footer>p{width:100%;font-size:8px;color:var(--room-ink-2);border-top:1px solid var(--room-rule);padding-top:15px}dialog{padding:25px;background:var(--room-paper);color:var(--room-ink);border:1px solid var(--room-rule);width:min(1100px,95vw);max-height:93vh;border-radius:5px}dialog::backdrop{background:#10261cbd;backdrop-filter:blur(6px)}.gallery-top{display:flex;justify-content:space-between;align-items:start;gap:20px}.gallery-top h2{font-size:40px}.gallery-top .eyebrow{margin-bottom:8px}.close{border:1px solid var(--room-rule);background:transparent;border-radius:50%;height:35px;width:35px;flex-shrink:0;font-size:22px}.gallery-filters{display:flex;flex-wrap:wrap;gap:7px;margin:22px 0}.gallery-filters button{font-size:10px;padding:6px 11px;background:transparent;border:1px solid var(--room-rule);border-radius:3px}.gallery-filters button.active{background:var(--room-act,var(--green));color:var(--room-act-ink,var(--paper))}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.gallery-grid button{padding:0;background:transparent;border:0;text-align:left}.gallery-grid img{aspect-ratio:1.5;object-fit:cover;width:100%;border-radius:2px}.gallery-grid span{display:block;font-size:9px;padding-top:6px;color:var(--room-ink-2)}.lightbox-top{display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:12px}.lightbox-image{display:grid;grid-template-columns:35px 1fr 35px;gap:13px;align-items:center;margin-top:16px}.lightbox-image>img{max-height:72vh;object-fit:contain;width:100%}.lightbox-image button{font-size:30px;background:none;border:0;padding:0}.photo-count{text-align:center;font-size:10px;color:var(--room-ink-2);margin-top:12px}@media(min-width:1500px){.hero{min-height:730px}.hero-photo{min-height:620px}}@media(max-width:900px){.hero{min-height:560px;gap:4%}.hero-photo{min-height:460px}.hero-photo figcaption{padding:60px 15px 15px}.hero-photo figcaption>span{display:none}.hero-foot{gap:7px;font-size:8px}.masthead nav{gap:17px}.stay-section{gap:5%}.booking-panel{padding:19px}.photo-story{grid-template-rows:165px 165px}.local-section{gap:7%}}@media(max-width:650px){.preview-detail{display:none}.masthead{padding:20px 6%}.masthead nav>a:first-child,.masthead .nav-link{display:none}.masthead nav{gap:0}.logo{font-size:12px;gap:7px}.logo svg{width:28px}.nav-book{font-size:10px;padding:8px 11px}.nav-book span{margin-left:6px}.hero{display:flex;flex-direction:column;padding:24px 6% 35px;gap:30px}.hero-copy{width:100%}h1{font-size:clamp(57px,12.5vw,78px)}.hero-description{font-size:12px;margin:21px 0;max-width:300px}.hero-foot{font-size:9px;margin-top:22px}.hero-photo{min-height:0;height:430px;width:100%}.hero-photo>img{border-radius:85px 2px 2px 2px}.hero-photo figcaption>span{display:block;font-size:7px}.section-pad{padding:45px 6%}.house-section,.local-section,.stay-section,.good-to-know{grid-template-columns:1fr;gap:25px}.house-copy{padding-top:0}.eyebrow{margin-bottom:15px}.house-copy>p{font-size:12px}h2{font-size:47px}.photo-section{padding-top:10px}.section-heading{align-items:start}.section-heading>.button{font-size:9px;padding:9px 11px;gap:7px;white-space:nowrap;margin-top:5px}.photo-story{grid-template-columns:1fr 1fr;grid-template-rows:270px 180px;gap:10px}.photo-large{grid-row:auto;grid-column:span 2}.photo-tile>span{font-size:16px;padding-left:12px}.local-section{padding-top:10px}.local-image img{aspect-ratio:1.45;border-radius:2px 2px 70px 2px}.local-copy>p:not(.eyebrow){max-width:100%}.stay-section{margin-top:10px;gap:30px}.steps{margin-top:20px}.steps>div{max-width:none}.stay-intro p.preview-note{max-width:none}.booking-panel{padding:22px}.calendar button{max-height:43px;font-size:12px}.calendar-heading{font-size:23px}.calendar-status,.calendar-hint,.weekdays{font-size:10px}.form-grid label{font-size:11px}input,select,textarea{font-size:13px;padding:11px 9px}.request-summary{font-size:12px}.request-status{font-size:10px}.gallery-grid{grid-template-columns:repeat(2,1fr)}.gallery-top h2{font-size:31px}dialog{padding:18px}.lightbox-image{grid-template-columns:22px 1fr 22px;gap:6px}.site-footer{padding:27px 6%}.site-footer>div{gap:17px}}@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*{transition:none!important}}

.calendar button.is-blocked{text-decoration:line-through;color:var(--room-ink-2);background:color-mix(in srgb,var(--room-ink) 7%,var(--room-paper-up));opacity:.65}.calendar button.is-blocked.endpoint{color:var(--room-act-ink,var(--paper));background:var(--room-act,var(--green));text-decoration:none}.calendar-status.needs-attention{color:var(--room-ember,#a86d40)}

/* Full listing details and optional guest protection. */
.property-details{border-top:1px solid var(--room-rule);scroll-margin-top:24px}.details-intro{max-width:310px;font-size:12px;line-height:1.8;color:var(--room-ink-2)}.amenity-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 30px;align-items:start}.amenity-group{border-bottom:1px solid var(--room-rule);padding:18px 0}.amenity-group summary{display:flex;gap:20px;justify-content:space-between;cursor:pointer;list-style:none;font-size:13px}.amenity-group summary span{font-size:10px;color:var(--room-ink-2);border:1px solid var(--room-rule);border-radius:30px;padding:2px 8px}.amenity-group summary:before{content:'＋';color:var(--room-ink-2)}.amenity-group[open] summary:before{content:'−'}.amenity-group ul{padding:17px 0 0 22px;margin:0;font-size:11px;line-height:1.8}.amenity-group li{margin:0 0 12px}.amenity-group strong{font-weight:500}.amenity-group li p{font-size:10px;line-height:1.7;color:var(--room-ink-2);margin-top:3px}.details-note{margin-top:22px;font-size:10px;line-height:1.8;color:var(--room-ink-2)}.details-note a{text-decoration:underline;text-underline-offset:3px}.rule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.rule-grid article,.protection-card{border:1px solid var(--room-rule);padding:24px;background:var(--room-paper-up)}.rule-grid h3,.protection-card h3{font:25px Georgia,serif;margin:0 0 16px}.rule-grid ul{padding-left:17px;font-size:11px;line-height:1.9;color:var(--room-ink-2)}.rule-grid li+li{margin-top:10px}.stay-protection{display:grid;grid-template-columns:1fr 1fr;gap:8%;border-top:1px solid var(--room-rule)}.stay-protection>div>p:not(.eyebrow),.protection-card>p{font-size:12px;line-height:1.9;color:var(--room-ink-2);margin-top:20px}.protection-card .button{margin-top:20px}.protection-card p.details-note{font-size:10px}@media(max-width:700px){.amenity-groups,.rule-grid,.stay-protection{grid-template-columns:1fr}.stay-protection{gap:26px}.rule-grid{gap:15px}.masthead nav{flex-wrap:wrap;justify-content:flex-end}.amenity-group summary{font-size:14px}.amenity-group ul,.rule-grid ul{font-size:12px}}

/* Nearby places: three photo-led neighborhood postcards. */
.neighborhood-section{border-top:1px solid var(--room-rule);scroll-margin-top:24px;padding-top:65px}.neighborhood-intro{max-width:300px;font-size:12px;line-height:1.85;color:var(--room-ink-2)}.neighborhood-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.neighborhood-card{min-width:0}.neighborhood-card figure{margin:0}.neighborhood-card figure>a{display:block;overflow:hidden;background:var(--soft);border-radius:3px}.neighborhood-card:first-child figure>a{border-top-left-radius:55px}.neighborhood-card img{width:100%;height:auto;aspect-ratio:1.5;object-fit:cover;transition:transform .5s}.neighborhood-card:nth-child(2) img{object-position:50% 30%}.neighborhood-card figure>a:hover img{transform:scale(1.025)}.neighborhood-card figcaption{margin-top:8px;font-size:8px;line-height:1.7;color:var(--room-ink-2)}.neighborhood-card figcaption a{text-decoration:underline;text-underline-offset:2px}.neighborhood-copy{padding:22px 0 0}.neighborhood-copy .eyebrow{font-size:8px;margin-bottom:12px;letter-spacing:.12em}.neighborhood-copy h3{font:28px/1.1 'Libre Caslon Display',Georgia,serif;letter-spacing:-.02em;margin:0 0 14px}.neighborhood-copy>p:not(.eyebrow){font-size:12px;line-height:1.85;color:var(--room-ink-2)}.neighborhood-copy .text-link{margin-top:16px}.neighborhood-note{font-size:10px;line-height:1.8;margin-top:28px;color:var(--room-ink-2)}@media(max-width:900px){.neighborhood-grid{gap:18px}.neighborhood-copy h3{font-size:24px}}@media(max-width:650px){.neighborhood-section .section-heading{display:block}.neighborhood-intro{max-width:none;margin-top:18px}.neighborhood-grid{grid-template-columns:1fr;gap:34px}.neighborhood-card img{max-height:280px}.neighborhood-copy{padding-top:18px}.neighborhood-copy h3{font-size:30px}.neighborhood-copy>p:not(.eyebrow){max-width:38em}.neighborhood-card figcaption{font-size:9px}.masthead nav{max-width:60%;gap:10px}.masthead nav>a{font-size:9px}}
