img{max-width:100%;height:auto}
:root{--ink:#1c2b2a;--ink2:#14201f;--ivory:#f5f0e6;--brass:#b8975a;--mut:rgba(245,240,230,.78)}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body{background:var(--ivory);color:var(--ink);font-family:'Jost',sans-serif;font-weight:400;line-height:1.7;font-size:1.02rem}
h1,h2,h3,.serif{font-family:'Cormorant Garamond',serif;font-weight:400;line-height:1.12}
h2{font-size:clamp(2.2rem,4.5vw,3.4rem)}
h3{font-size:1.5rem}
.caps{font-size:.68rem;letter-spacing:.3em;text-transform:uppercase;font-weight:500}
.eyebrow{color:var(--brass);display:block;margin-bottom:1rem}
.sub{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:1.35rem;opacity:.85}
section{padding:96px 0}
@media(max-width:767px){section{padding:64px 0}}
.dark{background:var(--ink);color:var(--ivory)}
.dark p{color:var(--mut)}
/* nav (c): centered name above link row */
.navbar{background:rgba(20,32,31,.94);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:.9rem 0;border-bottom:1px solid rgba(184,151,90,.2)}
.navbar .container{flex-direction:column}
.navbar-brand{font-family:'Cormorant Garamond',serif;font-size:1.5rem;letter-spacing:.22em;text-transform:uppercase;font-weight:300;color:var(--ivory)!important;margin:0}
.navbar-brand:hover{color:var(--ivory)}
.navbar.navbar-expand-lg .navbar-collapse{justify-content:center;width:100%}
.navbar .nav-link{color:rgba(245,240,230,.8);font-size:.66rem;letter-spacing:.26em;text-transform:uppercase;padding:.6rem 1rem;transition:color .3s}
.navbar .nav-link:hover{color:var(--brass)}
.navbar-toggler{border:1px solid rgba(245,240,230,.35);margin-top:.5rem}
.navbar-toggler-icon{filter:invert(1)}
@media(max-width:991px){.navbar .container{align-items:center}.navbar .nav-link{text-align:center}}
/* buttons */
.btn-brass,.btn-ghost{border-radius:0;font-size:.68rem;letter-spacing:.28em;text-transform:uppercase;padding:15px 36px;font-weight:500;transition:.3s}
.btn-brass{background:var(--brass);color:var(--ink2);border:1px solid var(--brass)}
.btn-brass:hover{opacity:.85;color:var(--ink2)}
.btn-ghost{border:1px solid rgba(245,240,230,.35);color:var(--ivory)}
.btn-ghost:hover{background:rgba(245,240,230,.1);color:var(--ivory)}
.btn-ghost.on-light{border-color:rgba(28,43,42,.4);color:var(--ink)}
.btn-ghost.on-light:hover{background:rgba(28,43,42,.06);color:var(--ink)}
/* hero */
.hero{padding:72px 0 80px;position:relative;overflow:hidden}
.hero h1{font-size:clamp(2.6rem,5.5vw,4.6rem)}
.hero h1 em{color:var(--brass)}
.hero-photo{border:1px solid rgba(184,151,90,.45);padding:10px;max-width:640px}
.hero-photo img{display:block;width:100%;aspect-ratio:800/482;object-fit:cover;object-position:30% 30%;border-radius:2px;max-height:min(66vh,480px)}
.facts{list-style:none;padding:0;margin:1.6rem 0 2rem;display:flex;flex-wrap:wrap;gap:.6rem 2rem}
.facts li{color:var(--mut)}
.facts li::before{content:"";display:inline-block;width:5px;height:5px;background:var(--brass);margin-right:.7rem;vertical-align:middle}
/* signature: vertebral column */
.spine{position:absolute;right:2.2%;top:0;height:100%;width:34px;opacity:.16;pointer-events:none}
.spine-div{display:flex;justify-content:center;gap:10px;padding:0;opacity:.6}
.spine-div svg{width:26px;height:14px}
@media(max-width:991px){.spine{display:none}}
/* hairline cards */
.hl{border-top:1px solid rgba(184,151,90,.45);padding-top:1.4rem;height:100%}
.hl p{margin:0;opacity:.85}
.dark .hl p{opacity:1}
.why li{padding:1rem 0;border-bottom:1px solid rgba(184,151,90,.25)}
.why{list-style:none;padding:0;margin:0}
.frame{border:1px solid rgba(184,151,90,.45);padding:10px}
.frame img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;object-position:50% 40%}
.pull{border-left:1px solid var(--brass);padding-left:1.5rem;font-family:'Cormorant Garamond',serif;font-style:italic;font-size:1.5rem}
.map{border:1px solid rgba(184,151,90,.45);width:100%;height:380px;display:block}
a{color:inherit}
.contact-line a{text-decoration:none;border-bottom:1px solid var(--brass)}
footer{background:var(--ink2);color:var(--mut);padding:56px 0;font-size:.9rem}
footer .chip{display:inline-block;background:var(--ivory);padding:8px 12px}
footer a{text-decoration:none}
