:root{--ink:#14284b;--ink2:#0e1d38;--paper:#f7f1e5;--sand:#ece2cd;--brick:#b64a2e;--brick-d:#8f3820;--mute:#5a6479}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
img{max-width:100%;height:auto}
body{font-family:'Work Sans',system-ui,sans-serif;color:var(--ink);background:var(--paper);font-size:1.05rem;line-height:1.65;overflow-x:hidden}
h1,h2,h3,h4,.brand{font-family:'DM Serif Display',Georgia,serif;font-weight:400;line-height:1.05}
.mono,.eyebrow{font-family:'Courier Prime',monospace;text-transform:uppercase;letter-spacing:.16em;font-size:.8rem;font-weight:700}
.eyebrow{color:var(--brick-d);display:block;margin-bottom:.8rem}
a{color:var(--brick-d)}
.util{background:var(--ink2);color:#e9e2d0;font-size:.85rem;padding:.4rem 0}
.util a{color:#fff;text-decoration:none;margin-left:1.2rem}
.util a:hover{text-decoration:underline}
.site-nav{background:var(--paper);border-bottom:2px solid var(--ink);padding:.6rem 0}
.brand{font-size:1.7rem;color:var(--ink);text-decoration:none;line-height:1}
.brand small{display:block;font-family:'Courier Prime',monospace;font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--brick-d);margin-top:.25rem}
.site-nav .nav-link{font-family:'Courier Prime',monospace;font-weight:700;text-transform:uppercase;letter-spacing:.12em;font-size:.82rem;color:var(--ink)}
.site-nav .nav-link:hover{color:var(--brick)}
.navbar-toggler{border:2px solid var(--ink);border-radius:0}
.btn-brick{background:var(--brick);color:#fff;border:2px solid var(--brick);border-radius:0;font-family:'Courier Prime',monospace;font-weight:700;text-transform:uppercase;letter-spacing:.12em;padding:.8rem 1.6rem}
.btn-brick:hover{background:var(--brick-d);border-color:var(--brick-d);color:#fff}
.btn-line{border:2px solid var(--ink);color:var(--ink);border-radius:0;font-family:'Courier Prime',monospace;font-weight:700;text-transform:uppercase;letter-spacing:.12em;padding:.8rem 1.6rem}
.btn-line:hover{background:var(--ink);color:#fff}
.hero,.rooms{overflow:hidden}
.hero{background:var(--ink);color:#fff;padding:3rem 0 3.4rem;position:relative;overflow:hidden}
.hero h1{font-size:clamp(2.7rem,6.4vw,5rem);color:#fff}
.hero h1 em{color:#f2b38f;font-style:italic}
.hero .lead{color:#dfe5f1;font-size:1.15rem;max-width:34rem;margin:1.2rem 0 1.8rem}
.hero .eyebrow{color:#f2b38f}
.hero .btn-line{border-color:#fff;color:#fff}
.hero .btn-line:hover{background:#fff;color:var(--ink)}
.hero-photo{position:relative}
.hero-photo img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border:6px solid var(--paper);box-shadow:12px 12px 0 var(--brick)}
.stamp{position:absolute;width:118px;height:118px;border:3px double currentColor;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-family:'Courier Prime',monospace;font-weight:700;text-transform:uppercase;letter-spacing:.1em;line-height:1.15;transform:rotate(-12deg);opacity:.92}
.stamp b{font-size:.95rem;display:block}
.stamp span{font-size:.58rem}
.hero .stamp{right:-14px;bottom:-30px;background:var(--paper);color:var(--brick-d);z-index:2}
.postmarks{display:flex;gap:1.4rem 2.2rem;flex-wrap:wrap;justify-content:center;background:var(--sand);padding:1.1rem 0;border-bottom:2px solid var(--ink);font-family:'Courier Prime',monospace;font-weight:700;text-transform:uppercase;letter-spacing:.14em;font-size:.82rem}
.postmarks span::before{content:"✦";color:var(--brick);margin-right:.7rem}
section{padding:5rem 0}
h2{font-size:clamp(2rem,4.6vw,3.2rem);margin-bottom:1.2rem}
.about p{max-width:40rem}
.about-photo{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}
.about-photo img{width:100%;aspect-ratio:4/3;object-fit:cover;border:4px solid var(--ink)}
.about-photo img:first-child{grid-column:1/-1;aspect-ratio:3/2}
.facts{list-style:none;padding:0;margin:1.6rem 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.facts li{border-top:3px solid var(--ink);padding-top:.5rem;font-size:.95rem;line-height:1.35}
.facts b{display:block;font-family:'DM Serif Display',serif;font-weight:400;font-size:2.4rem;color:var(--brick);line-height:1}
.rooms{background:var(--ink);color:#fff}
.rooms h2{color:#fff}
.rooms .eyebrow{color:#f2b38f}
.rooms .intro{color:#d3dbea;max-width:40rem}
.room{position:relative;background:var(--paper);padding:.5rem .5rem 0;height:100%}
.room img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover}
.room .stamp{width:84px;height:84px;top:-14px;right:-10px;background:var(--paper);color:var(--brick-d);border-width:3px;z-index:2;font-size:.55rem}
.room .stamp b{font-size:.7rem}
.room .stamp span{font-size:.5rem}
.room figcaption{color:var(--ink);font-family:'Courier Prime',monospace;font-weight:700;text-transform:uppercase;letter-spacing:.1em;font-size:.82rem;padding:.7rem .4rem}
.room-info{background:var(--brick);color:#fff;padding:1.6rem;height:100%;display:flex;flex-direction:column;justify-content:center}
.room-info h3{font-size:1.8rem;color:#fff}
.room-info p{font-size:.95rem;margin:.6rem 0 0}
.amen{background:var(--sand)}
.amen ul{columns:2;column-gap:2rem;padding-left:1.1rem}
.amen li{margin-bottom:.4rem;break-inside:avoid}
.amen li::marker{color:var(--brick)}
.amen-photos{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}
.amen-photos img{width:100%;aspect-ratio:4/3;object-fit:cover;border:4px solid var(--ink)}
.rev{border:2px solid var(--ink);background:#fff;padding:1.4rem;height:100%;position:relative}
.rev q{display:block;font-family:'DM Serif Display',serif;font-size:1.25rem;line-height:1.3;quotes:none}
.rev cite{display:block;margin-top:.9rem;font-style:normal;font-family:'Courier Prime',monospace;font-weight:700;text-transform:uppercase;letter-spacing:.1em;font-size:.78rem;color:var(--brick-d)}
.award-wrap{display:flex;gap:2rem;align-items:center;border-top:3px solid var(--ink);margin-top:3.5rem;padding-top:2.5rem}
.award-wrap img{width:180px;border:4px solid var(--ink);flex:none}
.award-wrap h3{font-size:2rem}
.loc{background:var(--sand)}
.loc address{font-style:normal}
.bigphone{font-family:'DM Serif Display',serif;font-size:clamp(2rem,5vw,3rem);color:var(--brick);text-decoration:none;display:block;line-height:1.1}
.map{border:4px solid var(--ink);width:100%;height:380px;display:block}
.near{list-style:none;padding:0;margin:1.2rem 0 0}
.near li{padding:.45rem 0;border-bottom:1px dashed rgba(20,40,75,.35)}
footer{background:var(--ink2);color:#cfd6e4;padding:2.6rem 0;text-align:center;font-size:.92rem}
footer a{color:#fff}
footer .brand{color:#fff;display:block;margin-bottom:.4rem}
footer p{margin:.3rem 0}
@media(max-width:991px){.hero .stamp{right:6px;bottom:-26px}.site-nav .navbar-nav{padding:.6rem 0}.facts{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:767px){section{padding:3.4rem 0}.hero{padding:2rem 0 3rem}.amen ul{columns:1}.award-wrap{flex-direction:column;align-items:flex-start}.award-wrap img{width:130px}.facts b{font-size:2rem}.hero-photo img{box-shadow:8px 8px 0 var(--brick)}.util .d-sm-inline{display:none}}
