:root{--ink:#0e2b30;--ink2:#143a40;--cream:#f4efe4;--brass:#c4a574;--hair:rgba(196,165,116,.28);--haird:rgba(14,43,48,.18);--display:'Cormorant Garamond',Georgia,serif;--body:'Jost',system-ui,sans-serif}
img{max-width:100%;height:auto}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body{font-family:var(--body);background:var(--cream);color:var(--ink);font-size:1rem;line-height:1.75;overflow-x:hidden}
h1,h2,h3,h4{font-family:var(--display);font-weight:400;line-height:1.12}
a{color:var(--ink)}
.eyebrow,.btn,.nav-link,.util,.lbl,footer small{font-size:.68rem;letter-spacing:.28em;text-transform:uppercase;font-weight:500}
.eyebrow{color:#7a5f2f;margin-bottom:1.1rem;display:block}
.dark .eyebrow,.hero .eyebrow{color:var(--brass)}
.util{background:#091e22;color:rgba(244,239,228,.82);padding:.45rem 0;font-size:.64rem}
.util a{color:var(--cream);text-decoration:none;margin-left:1.4rem}
.util a:hover{color:var(--brass)}
.navbar{background:rgba(14,43,48,.94);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--hair);padding:.8rem 0}
.navbar-brand{font-family:var(--display);color:var(--cream);font-size:1.35rem;letter-spacing:.16em;text-transform:uppercase;font-weight:400;line-height:1.1;white-space:normal}
.navbar-brand:hover{color:var(--cream)}
.nav-link{color:rgba(244,239,228,.8)!important;padding:.5rem .8rem!important;transition:color .3s}
.nav-link:hover{color:var(--brass)!important}
.navbar-toggler{border-color:var(--hair);}
.navbar-toggler-icon{filter:invert(1)}
.btn{border-radius:0;padding:15px 36px;transition:.3s}
.btn-brass{background:var(--brass);color:var(--ink);border:1px solid var(--brass)}
.btn-brass:hover{background:transparent;color:var(--brass)}
.btn-ghost{background:transparent;color:var(--cream);border:1px solid rgba(244,239,228,.35)}
.btn-ghost:hover{border-color:var(--brass);color:var(--brass)}
.btn-ghost-d{background:transparent;color:var(--ink);border:1px solid var(--haird)}
.btn-ghost-d:hover{border-color:var(--ink);background:var(--ink);color:var(--cream)}
section{padding:96px 0}
.dark{background:var(--ink);color:var(--cream)}
.dark a{color:var(--cream)}
h2{font-size:clamp(2.2rem,4.4vw,3.5rem);margin-bottom:1.2rem}
.lede{font-family:var(--display);font-style:italic;font-size:1.35rem;opacity:.85;max-width:720px}
.hero{background:var(--ink);color:var(--cream);padding:90px 0 0;position:relative;overflow:hidden}
.hero h1{font-size:clamp(2.6rem,5.8vw,4.8rem);margin-bottom:1.3rem}
.hero h1 em{color:var(--brass)}
.hero .lede{margin-bottom:2rem}
.arch{border-radius:999px 999px 0 0;overflow:hidden;border:1px solid var(--brass);padding:10px}
.arch img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:62% 30%;border-radius:999px 999px 0 0}
.wave{display:block;width:100%;height:60px;margin-top:-1px}
.stats{border-top:1px solid var(--hair);border-bottom:1px solid var(--hair);margin-top:3rem}
.stats div{padding:1.1rem 0}
.stats b{font-family:var(--display);font-weight:400;font-size:2rem;display:block;color:var(--brass);line-height:1.1}
.stats span{font-size:.66rem;letter-spacing:.22em;text-transform:uppercase;opacity:.8}
.index li{list-style:none;border-top:1px solid var(--haird);padding:.85rem 0;font-family:var(--display);font-size:1.5rem;transition:padding .3s}
.index li:last-child{border-bottom:1px solid var(--haird)}
.index li:hover{padding-left:.6rem}
.index{padding:0;margin:0}
.photo{width:100%;object-fit:cover;display:block;border:1px solid var(--brass);padding:8px;background:transparent}
.band{background:linear-gradient(rgba(14,43,48,.62),rgba(14,43,48,.62)),url('img/band.webp') center 30%/cover no-repeat;color:var(--cream);padding:130px 0;text-align:center}
.band blockquote{font-family:var(--display);font-style:italic;font-size:clamp(1.8rem,3.6vw,2.9rem);max-width:900px;margin:0 auto 1rem;line-height:1.25;text-shadow:0 0 4px rgba(0,0,0,1),0 2px 20px rgba(0,0,0,.95)}
.band .eyebrow{text-shadow:0 0 3px rgba(0,0,0,1),0 1px 12px rgba(0,0,0,.95);color:#e6cfa3}
.gauge{position:relative;padding-left:0}
.phase{display:grid;grid-template-columns:70px 1fr;gap:1.2rem;padding:1.3rem 0;border-top:1px solid var(--hair);align-items:center}
.phase:last-child{border-bottom:1px solid var(--hair)}
.phase .tick{font-family:var(--display);font-size:2.4rem;color:var(--brass);line-height:1}
.phase h3{font-size:1.7rem;margin:0}
.phase .bar{height:2px;background:var(--brass);margin-top:.6rem;opacity:.7}
.review{border-top:1px solid var(--haird);padding-top:1.5rem;height:100%}
.review p{font-family:var(--display);font-style:italic;font-size:1.4rem;line-height:1.4}
.ins span{display:inline-block;border:1px solid var(--haird);padding:.55rem 1.1rem;margin:0 .5rem .6rem 0;font-size:.74rem;letter-spacing:.18em;text-transform:uppercase}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.gallery img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3;display:block}
.gallery .tall{grid-row:span 2}
.gallery .tall img{aspect-ratio:auto}
.loc{border-top:1px solid var(--hair);padding:1.6rem 0}
.loc h3{font-size:2rem}
.loc a.tel{font-family:var(--display);font-size:1.8rem;text-decoration:none;color:var(--brass)}
.map iframe{width:100%;height:100%;min-height:380px;border:1px solid var(--brass);display:block;filter:grayscale(.4)}
footer{background:#091e22;color:rgba(244,239,228,.8);padding:60px 0 30px}
footer a{color:var(--cream);text-decoration:none}
footer a:hover{color:var(--brass)}
.chip{background:var(--cream);display:inline-block;padding:10px 16px}
.chip img{width:160px;display:block}
@media(max-width:991px){section{padding:64px 0}.hero{padding-top:50px}.gallery{grid-template-columns:repeat(2,1fr)}.gallery .tall{grid-row:auto}.gallery .tall img{aspect-ratio:4/3}.arch{max-width:420px;margin:2rem auto 0}}
@media(max-width:575px){.navbar-brand{font-size:1.05rem}.phase{grid-template-columns:48px 1fr}.btn{padding:14px 24px}.util a{margin-left:.8rem}}
