:root{--forest:#1f3a2e;--forest2:#16291f;--cream:#f6f1e6;--cream2:#ece4d2;--brass:#b08a3e;--brass2:#d4b46a;--ink:#25302a}
html{scroll-behavior:smooth}
body{font-family:'Hanken Grotesk',system-ui,sans-serif;background:var(--cream);color:var(--ink);line-height:1.7;font-size:1.04rem;scroll-padding-top:80px}
h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;line-height:1.1;color:var(--forest)}
h2{font-size:clamp(2rem,4vw,2.9rem);margin-bottom:1rem}
h3{font-size:1.55rem}
a{color:var(--forest)}
.py-6{padding:5rem 0}
.eyebrow{font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;color:var(--brass);font-weight:700;margin-bottom:.6rem}
.navbar{background:var(--forest);border-bottom:1px solid var(--brass)}
.navbar-brand{font-family:'Cormorant Garamond',serif;font-size:1.45rem;font-weight:600;color:var(--cream)!important;letter-spacing:.04em}
.navbar-brand span{color:var(--brass2);font-style:italic}
.nav-link{color:var(--cream)!important;font-size:.82rem;letter-spacing:.1em;text-transform:uppercase;padding:.5rem .8rem!important}
.nav-link:hover{color:var(--brass2)!important}
.navbar-toggler{border-color:rgba(246,241,230,.5)}
.navbar-toggler-icon{filter:invert(1)}
.hero{position:relative;color:#fff;padding:5.5rem 0 4.5rem;background:linear-gradient(90deg,rgba(16,32,24,.92) 0%,rgba(16,32,24,.78) 45%,rgba(16,32,24,.25) 100%),url(img/hero.webp) 70% center/cover}
.hero h1{color:#fff;font-size:clamp(2.8rem,7vw,5rem);margin-bottom:1rem}
.hero .eyebrow{color:var(--brass2)}
.hero-copy{max-width:600px}
.hero .lead{font-size:1.12rem;color:#f3efe4;margin-bottom:1.6rem}
.hero-note{margin:1.2rem 0 0;font-size:.9rem;color:var(--brass2);letter-spacing:.04em}
.btn{border-radius:2px;letter-spacing:.1em;text-transform:uppercase;font-size:.8rem;font-weight:700;padding:.8rem 1.5rem}
.btn-brass{background:var(--brass);color:#fff;border:1px solid var(--brass)}
.btn-brass:hover{background:var(--forest);border-color:var(--brass);color:#fff}
.btn-ghost{border:1px solid #fff;color:#fff}.btn-ghost:hover{background:#fff;color:var(--forest)}
.btn-outline-forest{border:1px solid var(--forest);color:var(--forest)}.btn-outline-forest:hover{background:var(--forest);color:#fff}
.strip{background:var(--forest2);color:var(--cream);padding:1.4rem 0;border-bottom:1px solid var(--brass)}
.strip b{display:block;font-family:'Cormorant Garamond',serif;font-size:1.3rem;color:var(--brass2);font-weight:600}
.strip span{font-size:.82rem;letter-spacing:.06em;opacity:.85}
.bg-forest{background:var(--cream2)}
.small-note{font-size:.88rem;color:#5b655e}
.plain{list-style:none;padding:0}.plain li{padding:.35rem 0;border-bottom:1px solid rgba(31,58,46,.15)}
.dawn{height:44px;border-radius:2px;background:linear-gradient(90deg,#f2c98a,#f6e7b8 30%,#cfe3d6 55%,#8fb0c8 78%,#1f3a2e);display:flex;justify-content:space-between;align-items:center;padding:0 .9rem;font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;font-weight:700}
.dawn span:first-child{color:#5a4210}.dawn span:last-child{color:#f6f1e6}
.card-plain{background:#fff;padding:2rem;border-top:3px solid var(--brass)}
.price{list-style:none;padding:0;margin:1rem 0}
.price li{display:flex;justify-content:space-between;gap:1rem;padding:.55rem 0;border-bottom:1px solid var(--cream2)}
.price b{color:var(--forest)}
.photo{width:100%;height:auto;display:block;border-radius:3px}
.thumb{width:100%;height:auto;border-radius:3px;aspect-ratio:374/267;object-fit:cover}
.feature{display:flex;gap:1.2rem;background:#fff;padding:1.2rem;height:100%;border-top:3px solid var(--brass)}
.feature img{width:42%;max-width:240px;aspect-ratio:374/267;object-fit:cover;align-self:flex-start;border-radius:2px}
.feature h3{margin-bottom:.3rem}
.when{color:var(--brass);font-weight:700;letter-spacing:.06em;margin-bottom:.4rem}
.tile{margin:0;background:#fff;height:100%}
.tile img{width:100%;aspect-ratio:3/2;object-fit:cover;display:block}
.tile figcaption{padding:1.1rem 1.3rem 1.4rem}
.tile h3{font-size:1.4rem}.tile p{margin:0;font-size:.94rem}
.cats span{display:inline-block;border:1px solid var(--brass);padding:.15rem .8rem;margin:.2rem .3rem .2rem 0;font-size:.82rem;letter-spacing:.06em;color:var(--forest)}
address{font-style:normal;line-height:1.8}
.map{height:100%;min-height:340px}.map iframe{width:100%;height:100%;min-height:340px;border:0;border-radius:3px}
footer{background:var(--forest);color:var(--cream);padding:1.6rem 0;font-size:.88rem}
footer a{color:var(--brass2)}
.flogo{height:50px;width:auto}
@media(max-width:767px){
 .py-6{padding:3.2rem 0}
 .hero{padding:3.5rem 0 3rem;background:linear-gradient(180deg,rgba(16,32,24,.88),rgba(16,32,24,.75)),url(img/hero.webp) 65% center/cover}
 .feature{flex-direction:column}.feature img{width:100%;max-width:none}
}
