:root{--paper:#f4f1e9;--ink:#282921;--line:#c6c2b6}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.55 Georgia,serif}a,button{color:inherit}a{text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;width:100%}header,footer,.bar,.controls{display:flex;align-items:center;justify-content:space-between;gap:1rem}header{padding:25px 4.4%;border-bottom:1px solid var(--line)}.mark{font-size:32px;line-height:1;letter-spacing:-2px}.mark i{font-size:.85em}nav{display:flex;gap:30px}nav a,.small,.caption,footer,label,.action{font:11px/1.5 Arial,sans-serif;letter-spacing:1.4px;text-transform:uppercase}nav a[aria-current],nav a:hover,.action:hover{text-decoration:underline;text-underline-offset:5px}.cover{height:92svh;min-height:565px;position:relative;background:#292b23;color:#fffaf0;isolation:isolate}.cover>img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:50% 55%;z-index:-2}.cover:before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#13140fa8,transparent 33%,#16161016 52%,#14160fd1);z-index:-1}.cover header{border:0}.masthead{position:absolute;inset:13% 0 auto;text-align:center;font-size:clamp(70px,11vw,190px);line-height:1;letter-spacing:-.07em;margin:0;font-weight:400}.masthead i{font-size:.78em}.cover .bar{position:absolute;bottom:6%;left:5%;right:5%;align-items:end}.cover h2{font-size:clamp(38px,5vw,85px);margin:5px 0;line-height:1}.action{display:inline-block;border-bottom:1px solid;padding:6px 0}.controls button,dialog button{background:transparent;color:inherit;border:1px solid currentColor;padding:6px 12px}.controls{gap:12px}.cover .controls{align-self:end}.cover-caption{margin:4px 0 8px;font-style:italic}.wrap{max-width:1540px;margin:auto;padding:6vw 6%}h1,h2,h3{font-weight:400;letter-spacing:-.045em;line-height:1.05}h1{font-size:clamp(58px,8vw,120px);margin:15px 0 28px}h2{font-size:clamp(38px,5vw,78px);margin:12px 0}h3{font-size:32px}.spread{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.spread p,.lead{max-width:42ch;font-size:clamp(19px,2vw,29px);line-height:1.45}.spread img{aspect-ratio:1;object-fit:cover}.caption{margin-top:10px}.album{display:grid;grid-template-columns:repeat(2,1fr);gap:4vw 3vw;margin-top:4vw}.shot{padding:0;background:none;border:0;text-align:left}.shot:first-child{grid-column:1/-1;width:min(100%,710px);justify-self:center}.shot img{aspect-ratio:1;object-fit:cover}.shot .caption{display:block}.shot:hover .caption{text-decoration:underline}.service{border-top:1px solid var(--line);padding:16px 0;max-width:780px}.service h3{margin:5px 0}.service p{max-width:55ch}.form{max-width:600px}label{display:block;margin:20px 0}input,select,textarea{display:block;width:100%;background:transparent;border:0;border-bottom:1px solid #797969;border-radius:0;padding:10px 0;font:18px Georgia;color:inherit}.form button{background:var(--ink);color:var(--paper);border:0;padding:13px 20px}.note{font:13px/1.5 Arial,sans-serif}.form output{display:block;margin-top:16px}footer{border-top:1px solid var(--line);padding:24px 5%;font-size:9px}dialog{background:#24251f;color:#fff9ec;border:0;max-height:96svh;width:min(90vw,760px);padding:16px}dialog::backdrop{background:#171813de}dialog img{height:min(66svh,620px);object-fit:contain;margin:10px 0}dialog .caption{margin:0}.home-brand{font:12px Arial,sans-serif;letter-spacing:1.3px}.home-brand:hover{text-decoration:underline}a:focus-visible,button:focus-visible{outline:3px solid #ab784e;outline-offset:4px}@media(max-width:700px){header{align-items:flex-start;gap:18px;flex-direction:column;padding:20px 6%}nav{width:100%;justify-content:space-between;gap:8px}nav a{font-size:10px}.cover{min-height:550px;height:85svh}.masthead{top:21%}.cover .bar{gap:12px}.controls{gap:7px}.cover .controls button{padding:5px 9px}.spread{grid-template-columns:1fr;gap:24px}.wrap{padding:45px 6%}.album{gap:24px 12px}.caption{font-size:9px}.cover-caption{font-size:15px}footer{flex-wrap:wrap}}

.shot img[src="hall.webp"]{object-fit:contain}

.shot img[src="tibbs-bath-photo.webp"]{aspect-ratio:3/4;object-fit:contain}

.spread img[src="terrace-original.webp"],.shot img[src="terrace-original.webp"]{aspect-ratio:4/3;height:auto}

@media(min-width:701px) and (max-width:1100px){.inquiry-layout{grid-template-columns:1fr;gap:36px}.inquiry-layout .form{max-width:100%}}
@media(max-width:700px){.inquiry-layout img{width:100vw;margin-left:-6vw}}
