img{max-width:100%;height:auto}
:root{--ink:#14202e;--ink2:#0e1823;--ivory:#f4efe4;--brass:#b8975a}
html{scroll-behavior:smooth;scroll-padding-top:80px}
body{font-family:'Hanken Grotesk',system-ui,sans-serif;background:var(--ivory);color:var(--ink);font-size:1.02rem;line-height:1.75;overflow-x:hidden}
h1,h2,h3{font-family:'Fraunces',Georgia,serif;font-weight:300;line-height:1.12}
.eyebrow,.btn,.nav-link,dt,.no,figcaption span,.small-note,footer{font-size:.68rem;letter-spacing:.26em;text-transform:uppercase;font-weight:500}
.eyebrow{color:var(--brass);margin-bottom:1rem}
.dm-nav{background:var(--ink2);border-bottom:1px solid rgba(184,151,90,.25)}
.navbar-brand{font-family:'Fraunces',serif;font-weight:300;font-size:1.3rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ivory);line-height:1.1;white-space:normal}
.navbar-brand:hover{color:var(--ivory)}
.navbar-brand small{display:block;font-family:'Hanken Grotesk',sans-serif;font-size:.56rem;letter-spacing:.32em;color:var(--brass);margin-top:.25rem}
.nav-link{color:rgba(244,239,228,.85)!important}
.nav-link:hover{color:var(--brass)!important}
.navbar-toggler{border-color:rgba(244,239,228,.4)}
.navbar-toggler-icon{filter:invert(1)}
.btn{border-radius:0;padding:.85rem 1.6rem}
.btn-brass{background:var(--brass);color:var(--ink2);border:1px solid var(--brass)}
.btn-brass:hover{background:transparent;color:var(--brass);border-color:var(--brass)}
.btn-line{border:1px solid rgba(244,239,228,.5);color:var(--ivory)}
.btn-line:hover{border-color:var(--brass);color:var(--brass)}
.hero{background:linear-gradient(160deg,#1c2b3d,var(--ink));color:var(--ivory);padding:5rem 0 5.5rem}
.hero h1{font-size:clamp(2.6rem,5.5vw,4.6rem);color:var(--ivory);margin-bottom:1rem}
.hero .sub{font-family:'Fraunces',serif;font-style:italic;font-weight:300;font-size:1.45rem;opacity:.85;letter-spacing:.02em}
.lead-copy{max-width:540px;color:rgba(244,239,228,.88)}
.portrait{margin:0;max-width:380px;margin-inline:auto}
.portrait img{display:block;width:100%;border-radius:999px 999px 0 0;border:1px solid rgba(184,151,90,.6);padding:8px}
.portrait figcaption{margin-top:1rem;color:var(--ivory);font-family:'Fraunces',serif;font-size:1.15rem;letter-spacing:.04em;text-transform:none;text-align:center}
.portrait figcaption span{display:block;color:var(--brass);margin-top:.3rem}
.sec{padding:6rem 0}
.sec h2{font-size:clamp(2.1rem,4.4vw,3.3rem);margin-bottom:1rem}
.lede{font-family:'Fraunces',serif;font-style:italic;font-weight:300;font-size:1.3rem;opacity:.8}
.sec-dark{background:var(--ink);color:var(--ivory)}
.ledger{list-style:none;padding:0;margin:3rem 0 0;counter-reset:x}
.ledger>li{display:grid;grid-template-columns:4.5rem 1fr;gap:1rem;padding:2rem 0;border-top:1px solid rgba(184,151,90,.4)}
.ledger>li:last-child{border-bottom:1px solid rgba(184,151,90,.4)}
.no{color:var(--brass);padding-top:.7rem}
.ledger h3{font-size:1.8rem;margin-bottom:.7rem}
.ledger p{max-width:760px;margin-bottom:.8rem}
.items{padding-left:1.1rem;max-width:760px;margin:0}
.items li{margin-bottom:.3rem}
.rre-wrap{display:inline-block;background:var(--ivory);padding:10px;margin-top:1.5rem}.rre{display:block;width:220px}
.dl{margin-top:2rem}
.dl>div{display:grid;grid-template-columns:8rem 1fr;gap:1rem;padding:1.2rem 0;border-top:1px solid rgba(184,151,90,.3)}
dt{color:var(--brass);padding-top:.35rem}
dd{margin:0}
.res{display:block;padding:1rem 0;border-top:1px solid rgba(20,32,46,.18);color:var(--ink);text-decoration:none;font-family:'Fraunces',serif;font-size:1.2rem}
.res::after{content:" \2197";color:var(--brass)}
.res:hover{color:var(--brass)}
.addr{font-style:normal;font-family:'Fraunces',serif;font-size:1.35rem;line-height:1.5;margin:1.5rem 0 1rem}
.phones a{font-family:'Fraunces',serif;font-size:2rem;color:var(--brass);text-decoration:none}
.phones span{display:block;opacity:.75}
.small-note{color:rgba(244,239,228,.7);line-height:1.9;margin:1.2rem 0 1.6rem}
.map{border:1px solid rgba(184,151,90,.5);padding:8px}
.map iframe{width:100%;height:420px;border:0;display:block}
footer{background:var(--ink2);color:rgba(244,239,228,.7);padding:1.5rem 0}
footer a{color:var(--brass);text-decoration:none}
@media(max-width:575px){.ledger>li{grid-template-columns:1fr;gap:0}.dl>div{grid-template-columns:1fr;gap:0}.hero{padding:3rem 0}.sec{padding:4rem 0}}
