:root{--ink:#252c24;--green:#304435;--cream:#f8f5ed;--line:#dadace;--accent:#a65c37}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.65 system-ui,sans-serif}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #a65c37;outline-offset:4px}.demo{text-align:center;background:var(--green);color:white;padding:7px;font-size:10px;letter-spacing:.17em}header,main,footer{max-width:1280px;margin:auto;padding-inline:clamp(20px,5vw,70px)}header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:23px;border-bottom:1px solid var(--line)}.brand{font:27px Georgia,serif;line-height:1.1}.brand small{display:block;margin-left:25px;font:10px system-ui;letter-spacing:.22em}nav{display:flex;align-items:center;gap:25px;font-size:14px}.outline{border:1px solid var(--green);padding:9px 13px}.hero{display:grid;grid-template-columns: .9fr 1.2fr;align-items:center;gap:35px;padding-block:50px 65px}.kicker{font-size:11px;letter-spacing:.17em;font-weight:750;color:var(--accent)}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.05}h1{font-size:clamp(52px,7vw,100px);letter-spacing:-.06em;margin:16px 0 22px}h2{font-size:clamp(34px,5vw,58px);letter-spacing:-.045em;margin:10px 0 15px}h3{font-size:29px;margin:22px 0 10px}p{max-width:52ch}.button{display:inline-flex;gap:18px;align-items:center;background:var(--green);color:white;border:0;padding:12px 20px;margin-top:10px;font:600 14px/1.5 system-ui;cursor:pointer}.button:hover{background:#425a45}figure{margin:0;background:#dedfcd;overflow:hidden}figure img{display:block;width:100%;height:clamp(290px,40vw,490px);object-fit:cover}figcaption{padding:8px 14px;font-size:10px;letter-spacing:.18em}section{scroll-margin-top:18px}.intro{margin:0 0 22px}.rooms{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.rooms article{padding:22px;border:1px solid var(--line);background:#fffcf5;display:flex;flex-direction:column}.rooms article:nth-child(2){background:#eeeede}.room-top{display:flex;justify-content:space-between;gap:8px;color:#475342;font-size:12px}.rooms p{flex:1}.rooms button{margin-top:14px;align-self:start;border:0;border-bottom:1px solid var(--green);padding:4px 0;color:var(--green);font:inherit;background:none;cursor:pointer}.amenities,.booking{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-block:55px;padding:clamp(20px,4vw,46px);background:#e9eddf}.amenities ul{display:grid;grid-template-columns:1fr 1fr;align-content:center;gap:14px;list-style:none;padding:0}.booking{background:#eee4d5}.note{font-size:13px}.dates{display:grid;grid-template-columns:1fr 1fr;gap:10px}label{display:grid;gap:4px;margin-bottom:10px;font-size:13px;font-weight:600}input,select{width:100%;min-width:0;border:1px solid #aaa99a;background:#fffcf5;color:var(--ink);padding:10px;font:inherit}output:not(:empty){display:block;margin-top:15px;padding:10px;background:#fffcf5}details{border-bottom:1px solid var(--line);padding:12px 0}summary{cursor:pointer}footer{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-block:24px;margin-top:45px;border-top:1px solid var(--line);font-size:13px}footer a{text-decoration:underline}@media(max-width:720px){.hero,.rooms,.booking,.amenities{grid-template-columns:1fr}.hero{gap:23px;padding-block:30px}.hero figure img{height:290px}nav a:not(.outline){display:none}.rooms article{padding:18px}.amenities,.booking{margin-block:30px}}

.room-photo{display:block;width:100%;height:190px;object-fit:cover;object-position:50% 55%;border-radius:12px;margin-bottom:16px}
