:root{--cream:#fbf8f3;--oat:#f2ebe0;--stone:#e3d9ca;--ink:#3a332b;--muted:#7a7064;--sage:#6b7356;--gold:#b08a57;--oak:#d8bf98;--glow:rgba(255,214,150,.55);--serif:'Cormorant Garamond',Georgia,serif;--sans:'Jost',system-ui,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font:300 17px/1.75 var(--sans)}
img{max-width:100%;display:block}a{color:inherit}
.wrap{max-width:1200px;margin:0 auto;padding:0 32px}
h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.1;margin:0 0 .5em}
h1{font-size:clamp(44px,6vw,78px)}h2{font-size:clamp(34px,4vw,52px)}h3{font-size:30px}
.eyebrow{font-size:12px;letter-spacing:.32em;text-transform:uppercase;color:var(--gold);margin-bottom:18px;font-weight:400}
.lead{font-size:20px;color:var(--muted);max-width:620px}
.btn{display:inline-block;padding:14px 30px;border-radius:999px;border:1px solid var(--sage);background:var(--sage);color:var(--cream);text-decoration:none;font-size:13px;letter-spacing:.2em;text-transform:uppercase;font-weight:400;transition:.3s;cursor:pointer;font-family:var(--sans)}
.btn:hover{background:transparent;color:var(--sage)}
.btn.ghost{background:transparent;color:var(--sage)}.btn.ghost:hover{background:var(--sage);color:var(--cream)}
.btn.light{background:var(--cream);color:var(--ink);border-color:var(--cream)}.btn.light:hover{background:transparent;color:var(--cream)}
header.site{position:sticky;top:0;z-index:10;background:rgba(246,241,234,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--stone)}
header.site .wrap{display:flex;align-items:center;justify-content:space-between;height:84px}
.logo{font-family:var(--sans);font-weight:300;font-size:21px;text-transform:uppercase;text-decoration:none;letter-spacing:.34em;line-height:1}
.logo span{display:block;font-family:var(--sans);font-size:10px;letter-spacing:.32em;text-transform:uppercase;color:var(--muted);margin-top:6px}
nav.main{display:flex;gap:36px;align-items:center}
nav.main a{text-decoration:none;font-size:13px;letter-spacing:.2em;text-transform:uppercase;font-weight:400}
nav.main a:not(.btn)[aria-current]{border-bottom:1px solid var(--gold)}
nav.main .btn{padding:11px 22px;font-size:12px}
.menu-toggle{display:none;background:none;border:1px solid var(--ink);padding:8px 14px;font:400 12px var(--sans);letter-spacing:.2em;text-transform:uppercase}
.hero{position:relative;min-height:calc(100vh - 84px);display:flex;align-items:center;color:#fff}
.hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(40,32,24,.62),rgba(40,32,24,.25) 45%,rgba(40,32,24,0) 70%)}
.hero .wrap{position:relative;z-index:1;padding:60px 32px;width:100%}
.hero .eyebrow{color:#e9dcc6}.hero p{font-size:20px;max-width:560px;color:#f1ebe2}
.hero .actions{display:flex;gap:16px;margin-top:30px;flex-wrap:wrap}
section{padding:120px 0}
.intro{text-align:center}.intro .lead{margin:0 auto}
.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.split.rev>:first-child{order:2}
.split img{aspect-ratio:4/5;object-fit:cover;width:100%}
.alt{background:var(--oat)}
.rooms{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:60px}
.room{text-decoration:none;background:var(--cream);border-radius:200px 200px 4px 4px;overflow:hidden;box-shadow:0 0 0 1px var(--stone),0 0 40px -10px var(--glow);transition:box-shadow .5s}.room:hover{box-shadow:0 0 0 1px var(--oak),0 0 60px -6px var(--glow)}
.room img{aspect-ratio:4/3;object-fit:cover;width:100%;transition:transform .8s}
.room .ph{overflow:hidden}.room:hover img{transform:scale(1.04)}
.room .body{padding:26px 28px 34px;text-align:center}.room h3{font-size:28px;margin-bottom:6px}
.room p{margin:0;color:var(--muted);font-size:16px}
.room .floor{font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--gold)}
.list{list-style:none;padding:0;margin:28px 0}
.list li{display:flex;justify-content:space-between;gap:20px;padding:16px 0;border-bottom:1px solid var(--stone)}
.list li span:last-child{color:var(--muted);white-space:nowrap}
.page-head{padding:110px 0 60px}
.band{position:relative;color:#fff;text-align:center;padding:160px 0}
.band img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.band:after{content:"";position:absolute;inset:0;background:rgba(30,26,22,.5)}
.band .wrap{position:relative;z-index:1}.band p{max-width:560px;margin:0 auto 30px;color:#f1ebe2;font-size:19px}
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:60px;text-align:left}
.pillars h3{font-size:26px}.pillars p{color:var(--muted);margin:0}
.pillars .n{font-family:var(--serif);font-size:20px;color:var(--gold);font-style:italic}
form.inquiry{display:grid;grid-template-columns:1fr 1fr;gap:20px}
form.inquiry .full{grid-column:1/-1}
label{display:block;font-size:12px;letter-spacing:.2em;text-transform:uppercase;margin-bottom:8px;font-weight:400}
input,select,textarea{width:100%;padding:14px 16px;border:1px solid var(--stone);background:#fffdf9;font:300 16px var(--sans);color:var(--ink)}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--gold)}
.checks{display:flex;flex-wrap:wrap;gap:10px 24px}.checks label{text-transform:none;letter-spacing:0;font-size:16px;font-weight:300;display:flex;gap:8px;align-items:center}.checks input{width:auto}
.hp{position:absolute;left:-9999px}
.notice{display:none;padding:18px 22px;margin-bottom:24px;border:1px solid var(--sage);background:#eef0ea}.notice.err{border-color:#b98a7a;background:#f6ebe6}
.details p{margin:0 0 24px}.details strong{display:block;font-size:12px;letter-spacing:.2em;text-transform:uppercase;font-weight:400;color:var(--gold)}
footer.site{background:#4a4237;color:#e6ddcf;padding:80px 0 30px}
footer .cols{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px}
footer .logo.light{color:var(--cream);margin-bottom:16px}footer p{max-width:340px;font-size:15px}
footer h4{font-size:12px;letter-spacing:.24em;text-transform:uppercase;font-weight:400;color:var(--gold);margin:0 0 14px}
footer ul{list-style:none;padding:0;margin:0}footer li{margin:6px 0}footer a{text-decoration:none;font-size:15px}footer a:hover{color:#fff}
footer .base{border-top:1px solid #4a453f;margin-top:60px;padding-top:24px;font-size:13px;color:#9d958a}
@media(max-width:900px){
 .wrap{padding:0 22px}section{padding:80px 0}
 .menu-toggle{display:block}
 nav.main{display:none;position:absolute;top:84px;left:0;right:0;background:var(--cream);flex-direction:column;padding:28px;gap:22px;border-bottom:1px solid var(--stone)}
 nav.main.open{display:flex}
 .split,.rooms,.pillars,form.inquiry,footer .cols{grid-template-columns:1fr}
 .split{gap:40px}.split.rev>:first-child{order:0}
}

img.arch{border-radius:999px 999px 4px 4px;aspect-ratio:4/5;object-fit:cover;width:100%;box-shadow:0 0 0 10px var(--cream),0 0 0 11px var(--oak),0 0 70px 10px var(--glow)}
.btn.outline-light{background:transparent;color:#fff;border-color:#fff}.btn.outline-light:hover{background:#fff;color:var(--ink)}
.btn.light{color:var(--sage)}
.intro h2:after{content:"";display:block;width:56px;height:56px;margin:26px auto 0;border:1px solid var(--oak);border-bottom:0;border-radius:56px 56px 0 0;box-shadow:0 -8px 20px -8px var(--glow)}
.tour{display:grid;grid-template-columns:repeat(3,1fr);gap:70px 50px;margin-top:70px}
.stop{text-align:center}.stop img.arch{margin-bottom:34px}.stop p{color:var(--muted);margin:0}.stop .eyebrow{margin-bottom:8px}
.page-head{text-align:center}.page-head .lead{margin:0 auto}
@media(max-width:900px){.tour{grid-template-columns:1fr}.hero .wrap{padding:60px 22px}}
.prices{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:50px}
.price-card{background:var(--cream);text-align:center;padding:56px 30px 40px;border-radius:200px 200px 4px 4px;box-shadow:0 0 0 1px var(--stone),0 0 40px -10px var(--glow)}
.price-card h3{margin:0 0 10px}.price-card .amt{font-family:var(--serif);font-size:56px;font-weight:300;line-height:1.1;color:var(--sage)}.price-card p{color:var(--muted);margin:12px 0 0}
.fine{text-align:center;color:var(--muted);font-size:14px;margin-top:28px}
.price-cols{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-top:40px}.price-cols.one{grid-template-columns:1fr;max-width:560px;margin-left:auto;margin-right:auto}
.price-cols h4{font-size:12px;letter-spacing:.28em;text-transform:uppercase;font-weight:400;color:var(--gold);margin:0}
.list em{font-style:normal;color:var(--muted);font-size:14px;margin-left:10px}
@media(max-width:820px){.prices,.price-cols{grid-template-columns:1fr}}
.logo{display:block}.logo img.mk{height:50px;width:auto}.logo img.wd{height:44px;width:auto}
.foot-logo{width:200px;height:auto;margin-bottom:18px}
@media(max-width:600px){.logo img.mk{height:40px}.logo img.wd{height:34px}}
.logo{color:var(--ink,inherit)}footer .logo.light span{color:rgba(255,255,255,.6)}
