:root{--ink:#171310;--cream:#f5f1e9;--paper:#fffdf9;--gold:#c89b5b;--muted:#706a63;--line:#d9d0c4;--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.55}img{display:block;width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.site-header{height:86px;padding:0 clamp(22px,5vw,72px);display:flex;align-items:center;justify-content:space-between;background:var(--paper);position:relative;z-index:10}.brand{display:flex;align-items:center;gap:12px;font-weight:700;letter-spacing:.02em}.brand-mark{width:38px;height:38px;border:1px solid var(--gold);display:grid;place-items:center;font-family:var(--serif);font-size:24px;color:var(--gold)}.brand small{display:block;font-size:10px;font-weight:600;letter-spacing:.17em;text-transform:uppercase;color:var(--muted)}nav{display:flex;align-items:center;gap:32px;font-size:14px;font-weight:600}nav a:hover{color:#9d7138}.nav-cta{border-bottom:2px solid var(--gold);padding:8px 0}.menu-button{display:none;background:none;border:1px solid var(--line);padding:9px 12px}.hero{height:min(790px,calc(100vh - 86px));min-height:600px;position:relative;color:#fff;overflow:hidden}.hero>img{height:100%;object-fit:cover}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,11,9,.8) 0%,rgba(14,11,9,.42) 47%,rgba(14,11,9,.08) 80%)}.hero-content{position:absolute;left:clamp(24px,8vw,120px);top:50%;transform:translateY(-50%);max-width:720px}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-weight:700;font-size:12px;color:#e1bc82}.eyebrow.dark{color:#9b6e34}.hero h1,.intro h2,.why h2,.booking h2{font-family:var(--serif);font-size:clamp(48px,7vw,92px);line-height:.98;letter-spacing:-.035em;margin:18px 0 26px}.hero h1 em{font-weight:600;color:#e1bc82}.hero-content>p:not(.eyebrow){font-size:18px;max-width:600px;color:#f2eee8}.hero-actions{display:flex;gap:12px;margin-top:34px}.button{display:inline-flex;justify-content:center;align-items:center;min-height:50px;padding:0 24px;border:1px solid transparent;font-weight:700;font-size:14px;cursor:pointer}.button-gold{background:var(--gold);color:var(--ink)}.button-ghost{border-color:rgba(255,255,255,.6);color:#fff}.button:hover{transform:translateY(-1px)}.hero-note{position:absolute;right:clamp(24px,5vw,72px);bottom:40px;border-left:1px solid rgba(255,255,255,.55);padding-left:18px;font-size:13px;text-transform:uppercase;letter-spacing:.12em}.hero-note span{font-family:var(--serif);font-size:38px;display:block;line-height:1;color:#e1bc82}.intro{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;padding:110px clamp(22px,7vw,110px) 60px;align-items:end}.intro h2{font-size:clamp(42px,5.5vw,72px);margin:14px 0 0}.intro>p{font-size:18px;color:var(--muted);max-width:560px;margin:0 0 8px}.property-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;padding:0 clamp(22px,7vw,110px) 110px}.property-card{background:#fff;border:1px solid var(--line);display:grid;grid-template-rows:340px 1fr;transition:transform .25s,box-shadow .25s}.property-card:hover{transform:translateY(-4px);box-shadow:0 18px 45px rgba(36,28,18,.1)}.property-card.featured{grid-column:1/-1;grid-template-columns:1.25fr 1fr;grid-template-rows:480px}.property-image{position:relative;overflow:hidden;background:#ddd}.property-image img{height:100%;object-fit:cover;transition:transform .5s}.property-card:hover .property-image img{transform:scale(1.025)}.pill{position:absolute;top:18px;left:18px;background:rgba(23,19,16,.9);color:white;padding:7px 12px;font-size:11px;text-transform:uppercase;letter-spacing:.12em}.property-copy{padding:30px;display:flex;flex-direction:column}.rating{font-size:13px;color:#9b6e34;font-weight:700}.rating span{color:var(--muted);font-weight:500}.property-copy h3{font-family:var(--serif);font-size:30px;margin:8px 0 2px}.details{font-size:13px;color:var(--muted);font-weight:600;margin:0 0 18px}.property-copy>p:not(.details){color:var(--muted);margin:0 0 24px}.card-actions{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:auto}.card-actions button{background:var(--ink);color:#fff;border:0;padding:11px 14px;font-weight:700;cursor:pointer}.card-actions a{font-size:13px;border-bottom:1px solid var(--line)}.why{background:var(--ink);color:#fff;padding:110px clamp(22px,7vw,110px);display:grid;grid-template-columns:.9fr 1.1fr;gap:80px}.why h2{font-size:clamp(46px,5.5vw,72px);margin:14px 0}.why-list>div{display:grid;grid-template-columns:50px 1fr;column-gap:20px;padding:24px 0;border-top:1px solid #3c342e}.why-list span{grid-row:1/3;color:var(--gold);font-size:13px}.why-list h3{margin:0 0 6px;font-size:20px}.why-list p{margin:0;color:#bdb5ac}.booking{background:var(--cream);padding:110px clamp(22px,7vw,110px);display:grid;grid-template-columns:.9fr 1.1fr;gap:90px}.booking h2{font-size:clamp(44px,5vw,68px);margin:14px 0 24px}.booking-copy>p:not(.eyebrow){color:var(--muted);font-size:18px}.contact-lines{margin-top:40px;border-top:1px solid var(--line)}.contact-lines a{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:14px 0;font-weight:700}.contact-lines span{color:var(--muted);font-weight:500}form{background:var(--paper);padding:38px;border:1px solid var(--line)}label{display:flex;flex-direction:column;gap:7px;margin-bottom:18px;font-size:13px;font-weight:700}input,select,textarea{width:100%;background:transparent;border:1px solid var(--line);border-radius:0;padding:13px 14px;color:var(--ink);font-size:16px}input:focus,select:focus,textarea:focus{outline:2px solid var(--gold);outline-offset:1px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.button-dark{width:100%;background:var(--ink);color:#fff}.form-note{font-size:12px;color:var(--muted);margin:12px 0 0}footer{background:#0d0b09;color:#aaa198;padding:60px clamp(22px,7vw,110px);display:grid;grid-template-columns:1fr auto;gap:15px 60px;align-items:center;font-size:13px}footer .brand{color:#fff}.footer-brand{grid-row:span 2}.copyright{grid-column:1/-1;border-top:1px solid #2d2824;padding-top:22px;margin-top:18px}footer a:hover{color:#fff}@media(max-width:820px){.site-header{height:72px}.menu-button{display:block}nav{display:none;position:absolute;top:72px;left:0;right:0;background:var(--paper);padding:22px;flex-direction:column;align-items:flex-start;border-top:1px solid var(--line);box-shadow:0 12px 20px rgba(0,0,0,.08)}nav.open{display:flex}.hero{height:670px;min-height:0}.hero-overlay{background:linear-gradient(0deg,rgba(14,11,9,.82),rgba(14,11,9,.25))}.hero-content{top:auto;bottom:90px;transform:none;right:24px}.hero h1{font-size:52px}.hero-note{display:none}.intro{grid-template-columns:1fr;gap:20px;padding-top:80px}.property-grid{grid-template-columns:1fr;padding-bottom:80px}.property-card,.property-card.featured{grid-column:auto;grid-template-columns:1fr;grid-template-rows:280px 1fr}.why,.booking{grid-template-columns:1fr;gap:40px;padding-top:80px;padding-bottom:80px}footer{grid-template-columns:1fr}.footer-brand{grid-row:auto}.copyright{grid-column:auto}}@media(max-width:520px){.brand{font-size:14px}.brand-mark{width:34px;height:34px}.hero h1{font-size:43px}.hero-actions{flex-direction:column;align-items:stretch}.intro,.property-grid,.why,.booking{padding-left:18px;padding-right:18px}.property-copy{padding:24px 20px}.card-actions{align-items:flex-start;flex-direction:column}.form-row{grid-template-columns:1fr;gap:0}form{padding:24px 18px}.contact-lines a{display:block}.contact-lines span{display:block;margin-bottom:3px}}

.guest-info{padding:90px clamp(22px,7vw,110px);scroll-margin-top:90px}.guest-info h2{font-size:clamp(36px,4vw,58px);margin:12px 0 36px}.guest-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px 60px}.guest-grid>div{border-top:1px solid var(--line);padding-top:20px}.guest-grid h3{font-size:24px;margin:0 0 16px}.guest-grid p{font-size:16px;line-height:1.7;color:var(--muted)}.guest-grid details{border-bottom:1px solid var(--line);padding:16px 0}.guest-grid summary{font-size:16px;font-weight:600;cursor:pointer}.guest-grid summary:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.policy-links{display:grid;gap:12px;font-size:16px}.policy-links a{text-decoration:underline;text-underline-offset:4px}@media(max-width:820px){.guest-grid{grid-template-columns:1fr;gap:30px}.guest-info{padding:60px 22px}}



.footer-team-name{display:block;font-family:var(--serif);font-size:32px;line-height:1.2;color:#fff;max-width:420px}.footer-services{display:block;font-size:14px;margin-top:10px;color:#aaa198}.brand small{font-size:12px;letter-spacing:.08em}
