:root{--ink:#26362e;--moss:#415c49;--sage:#8b9b7b;--rust:#a95738;--cream:#f7f4ec;--paper:#fffefa;--sand:#e8dfcf;--muted:#73766e;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--sans)}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.skip{position:absolute;top:-100px;left:16px;background:white;padding:12px;z-index:100}.skip:focus{top:12px}.topbar{height:82px;padding:0 clamp(22px,6vw,88px);display:flex;align-items:center;justify-content:space-between;background:var(--paper);position:sticky;top:0;z-index:20;border-bottom:1px solid #e9e5dc}.brand{display:flex;align-items:center;gap:11px;font-size:13px;line-height:1.25;letter-spacing:.02em}.brand b{display:block;font-size:15px}.brand-mark{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--sage);border-radius:50%;font:600 20px var(--serif);color:var(--moss)}nav{display:flex;align-items:center;gap:31px;font-size:13px;color:#4c554c}nav>a:not(.nav-cta):hover,footer a:hover{color:var(--rust)}.nav-cta{padding:11px 15px;background:var(--moss);color:white!important}.nav-cta span,.button span{margin-left:10px}.menu-toggle{display:none}.hero{min-height:650px;height:min(760px,78vw);position:relative;color:white;display:flex;align-items:center}.hero-image,.hero-shade{position:absolute;inset:0}.hero-image{background:url('images/haus-sommer.jpg') center 48%/cover}.hero-shade{background:linear-gradient(90deg,rgba(26,43,34,.81) 0%,rgba(26,43,34,.52) 42%,rgba(26,43,34,.06) 100%),linear-gradient(0deg,rgba(24,35,27,.24),transparent 35%)}.hero-copy{position:relative;margin-left:clamp(28px,12vw,180px);max-width:570px;padding:72px 0}.eyebrow{text-transform:uppercase;font-size:10px;letter-spacing:.17em;font-weight:700;color:var(--rust);margin:0 0 19px}.hero .eyebrow{color:#e6c796}.hero .eyebrow span{display:inline-block;width:22px;height:1px;background:#e6c796;vertical-align:middle;margin-right:8px}.hero h1{font:500 clamp(50px,6.5vw,83px)/1.07 var(--serif);letter-spacing:-.04em;margin:0 0 24px}.hero h1 em,h2 em{font-weight:500;color:#bdc8ac}.hero-lede{font-size:16px;max-width:430px;color:#f2eee5;line-height:1.8}.hero-actions{display:flex;align-items:center;gap:27px;margin-top:32px}.button{border:0;padding:15px 20px;cursor:pointer;display:inline-flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:600;transition:.2s}.button:hover{transform:translateY(-2px)}.button-light{background:#f6f1e6;color:var(--ink)}.text-link{font-size:12px;border-bottom:1px solid #ffffff80;padding-bottom:4px}.hero-note{display:flex;align-items:center;gap:12px;font-size:11px;color:#e9e5da;margin-top:52px}.hero-note b{color:white}.note-icon{font-size:25px;color:#d7b276}.hero-caption{position:absolute;right:clamp(24px,6vw,90px);bottom:25px;text-transform:uppercase;font-size:9px;letter-spacing:.15em;color:#fff}.quick-facts{display:grid;grid-template-columns:repeat(4,1fr);padding:30px clamp(25px,8vw,120px);background:var(--cream);gap:24px}.quick-facts>div{display:flex;align-items:center;gap:13px}.fact-icon{width:38px;height:38px;border:1px solid #d2c9b7;color:var(--rust);border-radius:50%;display:grid;place-items:center;font-size:18px}.quick-facts b,.quick-facts small{display:block}.quick-facts b{font-size:12px}.quick-facts small{font-size:10px;color:var(--muted)}.section{padding:112px clamp(24px,10vw,148px)}h2{font:500 clamp(36px,4vw,51px)/1.2 var(--serif);letter-spacing:-.025em;margin:0 0 22px;color:var(--ink)}h2 em{color:var(--rust)}.intro{display:grid;grid-template-columns:1fr .92fr;gap:9%;align-items:center}.intro-copy{max-width:480px}.intro-copy>p:not(.eyebrow),.around-copy>p:not(.eyebrow),.arrival-copy>p:not(.eyebrow){font-size:14px;color:#687067;line-height:1.9}.arrow-link{display:inline-flex;gap:22px;align-items:center;border-bottom:1px solid var(--rust);padding:6px 0;font-size:12px;font-weight:600;color:var(--moss);margin-top:19px}.arrow-link span{color:var(--rust)}.intro-photo{height:430px;position:relative}.intro-photo img{object-position:center}.photo-stamp{position:absolute;bottom:-20px;left:-28px;background:#e8dfcf;color:var(--moss);width:115px;height:115px;border-radius:50%;display:grid;place-items:center;text-align:center;font:500 15px/1.4 var(--serif);transform:rotate(-8deg)}.rooms{background:var(--cream)}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:35px}.section-heading>p{max-width:300px;font-size:13px;color:var(--muted);margin:0 0 10px}.room-grid{display:grid;grid-template-columns:1.18fr 1fr 1fr;gap:17px}.room-card{background:var(--paper)}.room-card img{height:245px}.room-large img{height:245px}.room-label{padding:17px 19px 21px;position:relative}.room-label>span{position:absolute;right:17px;top:16px;color:#a9a394;font-size:10px}.room-label h3{font:500 20px var(--serif);margin:0 0 8px}.room-label p{font-size:11px;color:var(--muted);margin:0}.amenities{display:flex;flex-wrap:wrap;gap:9px;margin-top:26px}.amenities span{border:1px solid #ded8cb;border-radius:30px;padding:8px 13px;font-size:10px;color:#586257}.quote-band{background:var(--moss);color:#f9f6ec;text-align:center;padding:62px 20px 56px}.quote-mark{font:70px/.6 var(--serif);color:#c6ad7c}.quote-band p{font:500 clamp(22px,3vw,33px)/1.45 var(--serif);max-width:740px;margin:15px auto 21px}.quote-band>span{font-size:9px;letter-spacing:.18em;color:#cbd0c2}.around{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.around-image{height:500px;position:relative}.around-image img{object-position:center}.image-tag{position:absolute;bottom:18px;left:18px;background:var(--paper);padding:11px 16px;font:500 14px var(--serif)}.around-copy{max-width:470px}.nearby-list{margin:24px 0 10px}.nearby-list>div{display:grid;grid-template-columns:35px 1fr;align-items:center;padding:12px 0;border-bottom:1px solid #e8e4db}.nearby-list>div>span{grid-row:span 2;font-size:10px;color:var(--rust)}.nearby-list b{font-size:12px}.nearby-list small{font-size:10px;color:var(--muted)}.booking{background:#eee8dc;display:grid;grid-template-columns:.9fr 1.1fr;gap:11%;align-items:center}.booking-intro>p:not(.eyebrow){font-size:14px;color:#687067;max-width:360px}.booking-contact{margin-top:37px;padding-top:18px;border-top:1px solid #d6cebf;display:flex;flex-direction:column}.booking-contact span,.form-heading span:first-child{font-size:9px;letter-spacing:.15em;color:#777b6f}.booking-contact a{font:500 24px var(--serif);color:var(--moss);margin-top:6px}.booking-form{background:var(--paper);padding:30px 34px;box-shadow:0 12px 35px #27362e0a}.form-heading{display:flex;justify-content:space-between;border-bottom:1px solid #e9e4da;padding-bottom:14px;margin-bottom:20px}.form-leaf{color:var(--rust)}.booking-form label{display:block;font-size:10px;font-weight:600;margin-bottom:14px}.date-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.booking-form input,.booking-form select,.booking-form textarea{display:block;width:100%;margin-top:6px;border:1px solid #e1ddd4;background:#fffefa;padding:11px 12px;font-size:12px;color:var(--ink);border-radius:0}.booking-form input:focus,.booking-form select:focus,.booking-form textarea:focus{outline:2px solid #9aaa8b;outline-offset:1px}.booking-form textarea{resize:vertical}.booking-form .button{width:100%;margin-top:4px}.button-dark{background:var(--moss);color:white}.form-note,.form-status{font-size:9px;line-height:1.6;color:var(--muted);margin:12px 0 0}.form-status{color:var(--moss);font-weight:600}.optional{font-weight:400;color:#92948b;margin-left:5px}.pricing{display:grid;grid-template-columns:.75fr 1.25fr;gap:7%;align-items:start}.pricing-head>p:last-child{font-size:13px;color:var(--muted);max-width:330px}.price-details{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;padding-top:14px}.price-details>div{border-top:1px solid #cfc8b9;padding-top:15px}.price-icon{color:var(--rust);font-size:19px}.price-details b{display:block;font:500 17px var(--serif);margin-top:15px}.price-details p,.pricing-footnote{font-size:10px;color:var(--muted);line-height:1.8}.pricing-footnote{grid-column:2;margin:0}.arrival{background:var(--cream);display:grid;grid-template-columns:.85fr 1.15fr;gap:9%;align-items:center}.arrival-copy{max-width:390px}.arrival-photo{height:390px;position:relative}.arrival-photo img{object-position:center 55%}.address-card{position:absolute;left:-28px;bottom:25px;background:var(--paper);padding:20px 25px;box-shadow:0 8px 20px #1c2c2010}.address-card span{display:block;font-size:8px;letter-spacing:.15em;color:var(--rust);margin-bottom:9px}.address-card b{font:500 22px/1.3 var(--serif)}.contact-strip{background:#dce1d4;padding:45px clamp(24px,10vw,148px);display:flex;align-items:center;justify-content:space-between}.contact-strip .eyebrow{margin-bottom:8px}.contact-strip h2{font-size:34px;margin:0}.contact-strip h2 em{color:var(--moss)}.contact-links{display:flex;gap:28px;align-items:center}.contact-links a:first-child{font:500 20px var(--serif)}.contact-links a:last-child{border-bottom:1px solid var(--moss);font-size:12px;padding:7px 0}footer{padding:27px clamp(24px,6vw,88px);display:flex;align-items:center;justify-content:space-between;gap:20px;background:var(--paper);font-size:10px;color:#697067}footer .brand{color:var(--ink)}footer div{display:flex;gap:18px}footer small{font-size:9px}
@media(max-width:900px){.topbar{padding:0 24px}.menu-toggle{display:block;border:1px solid #d8d5ca;background:transparent;padding:8px 12px;font-size:12px;color:var(--ink)}nav{display:none;position:absolute;top:81px;left:0;right:0;background:var(--paper);padding:20px 24px 26px;flex-direction:column;align-items:stretch;gap:17px;border-bottom:1px solid #e9e5dc}nav.open{display:flex}.quick-facts{grid-template-columns:repeat(2,1fr);padding:26px}.section{padding:80px 7vw}.intro{gap:6%}.around{gap:7%}.booking{gap:6%}.pricing{grid-template-columns:1fr}.pricing-footnote{grid-column:1}.contact-strip{padding-left:7vw;padding-right:7vw}footer{flex-wrap:wrap}}
@media(max-width:620px){.hero{height:auto;min-height:680px;align-items:flex-end}.hero-image{background-position:62% center}.hero-shade{background:linear-gradient(0deg,rgba(25,40,31,.88) 0%,rgba(25,40,31,.47) 68%,rgba(25,40,31,.1) 100%)}.hero-copy{margin:0;padding:110px 26px 70px}.hero h1{font-size:54px}.hero-lede{font-size:14px}.hero-actions{align-items:flex-start;flex-direction:column;gap:16px}.hero-note{margin-top:30px}.hero-caption{font-size:8px}.quick-facts{gap:18px 12px;padding:22px 18px}.fact-icon{width:32px;height:32px;flex:none}.quick-facts small{font-size:9px}.section{padding:67px 23px}h2{font-size:37px}.intro,.around,.booking,.arrival{grid-template-columns:1fr;gap:34px}.intro-photo{height:310px;margin:0 12px 0 20px}.photo-stamp{width:92px;height:92px;left:-17px;font-size:12px}.section-heading{display:block}.section-heading>p{margin-top:12px}.room-grid{grid-template-columns:1fr;gap:15px}.room-card img{height:225px}.amenities{gap:7px}.amenities span{font-size:9px}.around-image{height:310px;order:2}.around-copy{order:1}.booking-form{padding:23px 19px}.date-row{gap:10px}.price-details{grid-template-columns:1fr;gap:16px}.price-details>div{display:grid;grid-template-columns:35px 1fr;align-items:start}.price-icon{grid-row:span 2}.price-details b{margin:0}.price-details p{grid-column:2;margin:4px 0 0}.arrival-photo{height:310px;margin-left:12px}.address-card{left:-12px;bottom:15px;padding:16px 19px}.contact-strip{padding:33px 24px;display:block}.contact-strip h2{font-size:30px}.contact-links{margin-top:22px;justify-content:space-between;gap:12px}.contact-links a:first-child{font-size:18px}footer{padding:24px;display:grid;grid-template-columns:1fr 1fr}footer>span{grid-column:1/-1;grid-row:2}footer div{justify-content:flex-end}footer small{grid-column:1/-1}}

/* Clearer occupancy and more legible amenity features */
.capacity-callout{display:flex;align-items:center;gap:18px;margin:25px 0 20px;padding:20px 24px;background:#e9e4d8;border-left:3px solid var(--rust)}
.capacity-number{font:500 44px/.9 var(--serif);color:var(--moss);min-width:48px;text-align:center}
.capacity-callout div{display:flex;flex-direction:column;gap:5px}
.capacity-callout b{font:500 20px/1.2 var(--serif);color:var(--ink)}
.capacity-callout div span{font-size:13px;line-height:1.5;color:#586257}
.capacity-callout small{margin-left:auto;font-size:11px;color:var(--muted);white-space:nowrap}
.amenities{gap:11px;margin-top:30px}
.amenities span{padding:10px 15px;font-size:12px;line-height:1.35}
@media(max-width:620px){.capacity-callout{gap:12px;margin:20px 0 16px;padding:16px}.capacity-number{font-size:38px;min-width:40px}.capacity-callout b{font-size:17px}.capacity-callout div span{font-size:12px}.capacity-callout small{display:none}.amenities{gap:8px}.amenities span{font-size:11px;padding:9px 12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
.price-rules{display:grid;grid-template-columns:1fr 1fr;gap:9px 14px;margin-top:25px}.price-rules span{font-size:10px;color:#586257;display:flex;align-items:flex-start;gap:8px}.price-rules span:before{content:'✓';color:var(--rust);font-weight:700}.price-panel{background:var(--cream);padding:30px 34px}.price-table{max-width:530px;margin:auto}.price-table-head{display:flex;align-items:baseline;justify-content:space-between;padding:0 0 14px;border-bottom:1px solid #d7d0c2}.price-table-head b{font:500 19px var(--serif)}.price-table-head span{font-size:10px;color:var(--muted)}.price-row{display:flex;align-items:center;justify-content:space-between;padding:13px 0;border-bottom:1px solid #e1dbce;font-size:12px}.price-row small{display:block;font-size:9px;color:var(--muted)}.price-row>b{font:600 15px var(--sans);white-space:nowrap}.price-table-head.extras{margin-top:23px}.price-cta{width:100%;margin-top:22px}.calendar-section{display:grid;grid-template-columns:.72fr 1.28fr;gap:7%;align-items:center}.calendar-copy{max-width:350px}.calendar-copy>p:not(.eyebrow){font-size:13px;color:var(--muted);line-height:1.85}.calendar-frame{background:white;border:1px solid #e4dfd5;min-height:530px;overflow:hidden}.calendar-frame iframe{display:block;width:100%;height:530px;border:0}.calendar-frame iframe:focus{outline:2px solid var(--sage);outline-offset:-2px}
@media(max-width:900px){.calendar-section{grid-template-columns:1fr;gap:25px}.calendar-copy{max-width:600px}}
@media(max-width:620px){.price-panel{padding:23px 17px}.price-rules{grid-template-columns:1fr;gap:8px}.calendar-frame{min-height:500px}.calendar-frame iframe{height:500px}}
.gallery{background:var(--paper)}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:170px;gap:12px}.gallery-item{border:0;padding:0;position:relative;background:var(--sand);cursor:zoom-in;overflow:hidden;text-align:left}.gallery-item img{transition:transform .45s}.gallery-item:hover img{transform:scale(1.045)}.gallery-item:focus-visible{outline:3px solid var(--rust);outline-offset:3px}.gallery-item:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#1d2a208a)}.gallery-item span{position:absolute;z-index:1;bottom:12px;left:14px;color:white;font-size:11px;font-weight:600}.gallery-tall{grid-row:span 2}.gallery-wide{grid-column:span 2}.gallery-note,.experience-note{font-size:10px;color:var(--muted);margin:18px 0 0}.lightbox{max-width:min(92vw,1100px);max-height:92vh;padding:12px;border:0;background:#17211b;color:white;overflow:visible}.lightbox::backdrop{background:#101811e8}.lightbox img{width:auto;height:auto;max-width:calc(92vw - 24px);max-height:78vh;object-fit:contain}.lightbox p{font:500 16px var(--serif);margin:10px 4px 0}.lightbox-close{position:absolute;right:-14px;top:-14px;border:0;background:var(--paper);color:var(--ink);border-radius:50%;width:36px;height:36px;font-size:25px;cursor:pointer}.experience{background:var(--cream)}.experience-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.experience-card{background:var(--paper);display:flex;flex-direction:column}.experience-card>img,.s7-illustration{height:165px;width:100%;object-fit:cover}.experience-card>div:not(.s7-illustration){padding:17px 17px 20px;display:flex;flex-direction:column;flex:1}.experience-card>div>span{font-size:8px;letter-spacing:.16em;color:var(--rust);font-weight:700}.experience-card h3{font:500 20px/1.3 var(--serif);margin:10px 0 8px}.experience-card p{font-size:10px;line-height:1.8;color:var(--muted);margin:0 0 15px}.experience-card a{font-size:10px;font-weight:600;color:var(--moss);margin-top:auto;align-self:flex-start;border-bottom:1px solid #b6c0ad;padding-bottom:3px}.experience-note{margin-top:18px}.s7-illustration{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;background:linear-gradient(135deg,#415c49,#26362e);color:#f7f4ec;text-align:center}.s7-illustration span{font:600 48px/.95 var(--serif);color:#e7c995}.s7-illustration b{font:500 16px/1.2 var(--serif)}.s7-illustration i{font-style:normal;color:#d9c9a6}.s7-illustration small{font-size:9px;color:#d3d9ce}
@media(max-width:900px){.experience-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-grid{grid-template-columns:repeat(3,1fr);grid-auto-rows:155px}}
@media(max-width:620px){.gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:135px;gap:8px}.gallery-wide{grid-column:span 2}.experience-grid{grid-template-columns:1fr}.experience-card{display:grid;grid-template-columns:38% 1fr;min-height:220px}.experience-card>img,.experience-card>.s7-illustration{height:100%;min-height:220px}.experience-card>div:not(.s7-illustration){padding:14px 13px}.experience-card h3{font-size:18px}.experience-card p{font-size:9px}.gallery-tall{grid-row:span 2}}
/* System fonts only: no third-party webfont downloads. */
:root{--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}
.booking-email{font:500 13px var(--sans)!important;overflow-wrap:anywhere;margin-top:7px!important}.contact-links a:last-child{overflow-wrap:anywhere}.host{display:grid;grid-template-columns:.88fr 1.12fr;gap:10%;align-items:center;background:var(--paper)}.host-photo{height:410px;position:relative}.host-photo img{object-position:center 55%}.host-initial{position:absolute;right:-20px;bottom:-20px;width:86px;height:86px;display:grid;place-items:center;background:var(--moss);color:#efe5d1;border:5px solid var(--paper);border-radius:50%;font:500 38px var(--serif)}.host-copy{max-width:490px}.host-copy>p:not(.eyebrow){font-size:14px;color:#687067;line-height:1.9}.legal{max-width:900px;margin:0 auto;min-height:70vh;padding-top:80px}.legal h1{font:500 clamp(42px,5vw,60px)/1.1 var(--serif);margin:0 0 38px}.legal section{border-top:1px solid #e1ddd4;padding:20px 0 10px}.legal h2{font-size:25px;margin-bottom:14px}.legal p{font-size:14px;color:#4f5a50;line-height:1.85}.legal a:not(.arrow-link){text-decoration:underline;text-underline-offset:3px}.legal-note{background:var(--cream);padding:16px;font-size:11px!important;margin:22px 0}.legal footer{margin-top:auto}
@media(max-width:620px){.host{grid-template-columns:1fr;gap:30px}.host-photo{height:300px;margin-right:12px}.host-initial{right:-10px;width:70px;height:70px;font-size:30px}.legal{padding-top:56px}.legal h2{font-size:22px}}
.form-trap{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}
.form-result{max-width:720px;min-height:70vh;margin:0 auto;padding:clamp(72px,12vh,150px) 24px}.form-result h1{font:500 clamp(38px,5vw,58px)/1.15 var(--serif);color:var(--ink);margin:0 0 20px}.form-result>p:not(.eyebrow){color:#687067;font-size:14px;line-height:1.9}.form-result .result-contact{border-top:1px solid #e1ddd4;padding-top:18px;margin-top:30px}.form-result .result-contact a{color:var(--moss);text-decoration:underline;text-underline-offset:3px}
