:root{--ink:#1f2a30;--ink2:#2a373e;--cream:#f4efe5;--cream2:#ebe4d5;--brass:#a8884f;--brass-d:#7d6330;--mut:#58636a}
html{scroll-behavior:smooth;scroll-padding-top:120px}
body{font-family:'Jost',system-ui,sans-serif;background:var(--cream);color:var(--ink);font-size:1.05rem;line-height:1.7}
h1,h2,h3,.brand{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;line-height:1.12}
h2{font-size:clamp(2.2rem,4.6vw,3.4rem);margin-bottom:1rem}
h3{font-size:1.7rem}
a{color:var(--brass-d)}
.small-caps,.eyebrow,.navbar .nav-link,.btn,.label{font-family:'Jost',sans-serif;font-size:.7rem;text-transform:uppercase;letter-spacing:.28em;font-weight:500}
.eyebrow{color:var(--brass-d);margin-bottom:1rem;display:block}
.section{padding:6rem 0}
.narrow{max-width:46rem}
.navbar{background:rgba(31,42,48,.96);padding:.9rem 0 .6rem;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.navbar .brand{display:block;text-align:center;color:var(--cream);text-decoration:none;font-size:1.55rem;letter-spacing:.14em;text-transform:uppercase}
.navbar .brand span{display:block;font-family:'Jost';font-size:.6rem;letter-spacing:.35em;color:var(--brass);margin-top:.25rem}
.navbar .nav-link{color:rgba(244,239,229,.82);padding:.6rem 1.1rem}
.navbar .nav-link:hover{color:var(--brass)}
.navbar-toggler{border:1px solid rgba(244,239,229,.35)}.navbar-toggler-icon{filter:invert(1)}
.navbar .container{flex-direction:column}
.navbar.navbar-expand-lg .navbar-collapse{justify-content:center;width:100%}
.btn{border-radius:0;padding:15px 40px;transition:.3s}
.btn-brass{background:var(--brass);color:var(--ink);border:1px solid var(--brass)}
.btn-brass:hover{background:transparent;color:var(--cream)}
.btn-ghost{border:1px solid rgba(244,239,229,.4);color:var(--cream)}
.btn-ghost:hover{border-color:var(--brass);color:var(--brass)}
.btn-line{border:1px solid rgba(31,42,48,.4);color:var(--ink)}
.btn-line:hover{border-color:var(--brass-d);color:var(--brass-d)}
/* signature: pleated drapery folds */
.pleats{background:repeating-linear-gradient(90deg,rgba(255,255,255,.055) 0 2px,transparent 2px 26px,rgba(0,0,0,.16) 26px 52px,transparent 52px 78px),var(--ink)}
.rod{height:3px;background:linear-gradient(90deg,transparent,var(--brass) 8%,var(--brass) 92%,transparent);position:relative}
.rod::before,.rod::after{content:"";position:absolute;top:-5px;width:12px;height:12px;border-radius:50%;background:var(--brass)}
.rod::before{left:6%}.rod::after{right:6%}
.hero{color:var(--cream);text-align:center;padding:5.5rem 0 5rem;position:relative}
.hero h1{font-size:clamp(2.7rem,6vw,5rem);margin-bottom:1rem}
.hero h1 em{color:var(--brass)}
.hero .sub{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:1.4rem;letter-spacing:.03em;opacity:.85;max-width:38rem;margin:0 auto 2.2rem}
.hero .btn{margin:.3rem}
.hero .meta{margin-top:2.4rem;color:rgba(244,239,229,.8)}
.hero .meta a{color:var(--cream);text-decoration:none}
.index{list-style:none;padding:0;margin:2.5rem 0 0}
.index li{border-top:1px solid rgba(31,42,48,.2);padding:1.6rem 0;display:grid;grid-template-columns:1fr 2fr;gap:2rem;align-items:baseline}
.index li:last-child{border-bottom:1px solid rgba(31,42,48,.2)}
.index h3{margin:0}
.index p{margin:0;color:var(--mut)}
.band{background:var(--ink);color:var(--cream);text-align:center;padding:5rem 0}
.band p{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:clamp(1.6rem,3vw,2.4rem);max-width:44rem;margin:0 auto;line-height:1.3}
.alt{background:var(--cream2)}
.hours{border:1px solid rgba(168,136,79,.4);padding:2rem}
.hours .label{color:var(--brass-d);display:block;margin-bottom:.6rem}
.map{width:100%;height:100%;min-height:340px;border:1px solid rgba(168,136,79,.4)}
footer{color:var(--cream);text-align:center;padding:3rem 0 2rem;font-size:.9rem}
footer a{color:var(--brass);text-decoration:none}
footer .brand{font-size:1.4rem;letter-spacing:.14em;text-transform:uppercase;display:block;margin-bottom:.6rem}
@media(max-width:767px){.section{padding:4rem 0}.index li{grid-template-columns:1fr;gap:.4rem}.hero{padding:3.5rem 0}.btn{padding:14px 28px}.navbar .brand{font-size:1.2rem}}
