:root{--ink:#21312b;--cream:#f5f1e8;--moss:#536852;--gold:#b7864d;--line:#d8d2c7}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.55 Georgia,serif}header,section,footer,.admin,.login,.thanks{max-width:1120px;margin:auto;padding-left:28px;padding-right:28px}header{height:78px;display:flex;align-items:center;justify-content:space-between}.brand{font-size:22px;font-weight:bold;color:var(--ink);text-decoration:none}.brand span{color:var(--gold)}nav{display:flex;gap:22px;align-items:center}a{color:inherit}.button,button{background:var(--moss);color:#fff;border:0;border-radius:3px;padding:12px 19px;text-decoration:none;font:inherit;display:inline-block;cursor:pointer}.hero{max-width:none;min-height:580px;background-color:#2d3f34;background-size:cover;background-position:center;color:#fff;display:flex;align-items:end;padding-bottom:70px}.hero>div{max-width:1120px;width:100%;margin:auto;padding:0 28px}.hero h1{font-size:clamp(48px,7vw,82px);line-height:.95;margin:10px 0 20px}.lead{font-size:22px;max-width:550px}.light{background:#f8f4eb;color:var(--ink)}section{padding-top:85px;padding-bottom:85px}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font:12px Arial,sans-serif;color:var(--gold);font-weight:bold}.two-col,.request{display:grid;grid-template-columns:1fr 1fr;gap:80px}.two-col h2,.availability h2,.request h2{font-size:42px;line-height:1.08;margin-top:0}.details{list-style:none;padding:0;border-top:1px solid var(--line)}.details li{padding:15px 0;border-bottom:1px solid var(--line)}.gallery{max-width:1120px;display:grid;grid-template-columns:1fr 1fr;gap:18px;padding-top:0}.gallery img{width:100%;height:315px;object-fit:cover;border-radius:3px}.availability{background:#e6eadf;max-width:none}.availability>*{max-width:1064px;margin-left:auto;margin-right:auto}.month{background:#fff;padding:20px;border-radius:3px;max-width:680px}.month h3{margin:0 0 14px}.week,.days{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.week{font:11px Arial,sans-serif;color:#687068;text-align:center;margin-bottom:6px}.days b,.days i{display:grid;place-items:center;aspect-ratio:1;border-radius:50%;font:14px Arial,sans-serif;font-style:normal}.days .blocked{background:var(--moss);color:#fff;text-decoration:line-through}.request{background:#263b31;color:#fff;max-width:none}.request .eyebrow{color:#d8b782}.request form{display:grid;gap:14px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}label{display:grid;gap:5px;font:13px Arial,sans-serif}input,select,textarea{padding:10px;border:1px solid #b8b4ac;border-radius:2px;font:16px Arial,sans-serif;background:#fff;color:#202820}footer{padding-top:25px;padding-bottom:25px;font-size:13px;display:flex;justify-content:space-between}.thanks,.login{max-width:620px;padding-top:120px}.login form{display:grid;gap:14px}.admin{max-width:1400px}.admin header{padding:0}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;background:#fff}td,th{border:1px solid var(--line);padding:12px;text-align:left;vertical-align:top}td form{display:grid;gap:7px;min-width:170px}small{color:#59615c}@media(max-width:700px){nav a:not(.button){display:none}.two-col,.request,.grid,.gallery{grid-template-columns:1fr;gap:28px}.hero{min-height:460px}.two-col h2,.availability h2,.request h2{font-size:34px}}
