:root{--g:#3a3b22;--g2:#6b6332;--c:#4a3524;--cr:#f4ecdc;--gold:#c9a24d;--ink:#2a2318}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:17px/1.7 Lato,sans-serif;color:var(--ink);background:var(--cr)}
h1,h2,h3,.brand{font-family:Cinzel,serif;letter-spacing:.03em}a{color:inherit}
.wrap{max-width:1120px;margin:auto;padding:0 24px}.narrow{max-width:820px}.center{text-align:center}
.nav{position:sticky;top:0;z-index:9;background:rgba(30,28,16,.97);color:var(--cr)}.nav .wrap{display:flex;justify-content:space-between;align-items:center;height:64px}
.brand{font-size:1.4rem;font-weight:700;text-decoration:none}.nav nav a{margin-left:22px;text-decoration:none;font-size:.9rem;letter-spacing:.05em}
.pill{border:1px solid var(--gold);padding:6px 14px;border-radius:99px;color:var(--gold)}
.hero{position:relative;background:linear-gradient(90deg,rgba(26,24,14,.92) 0%,rgba(38,34,18,.78) 50%,rgba(38,34,18,.45) 100%),url(img/mountains.webp) center/cover;padding:90px 0 100px;color:var(--cr)}
.mtn{position:absolute;bottom:0;left:0;width:100%;height:240px}
.hero-grid{position:relative;display:grid;grid-template-columns:1.3fr 1fr;gap:48px;align-items:center}
.badge{display:inline-block;background:var(--c);color:var(--cr);padding:4px 14px;border-radius:99px;font-size:.8rem;letter-spacing:.15em;text-transform:uppercase}
h1{font-size:3.6rem;line-height:1.08;margin:.35em 0;color:var(--gold)}.sub{font-family:"Cormorant Garamond",serif;font-size:1.7rem;font-style:italic;margin:0;color:#efe2c4}
.tag{font-size:1.05rem;color:#e6dcc6;max-width:520px}
.btns{margin-top:28px;display:flex;gap:14px;flex-wrap:wrap}.btn{background:var(--g);color:var(--cr);border:0;padding:13px 26px;border-radius:6px;text-decoration:none;font:700 .95rem Lato;cursor:pointer}
.btn.ghost{background:transparent;border:2px solid var(--gold);color:var(--gold)}.hero .btn:not(.ghost){background:var(--gold);color:#1f1c10}
.cover{max-width:330px;margin:auto}.cover img{width:100%;height:auto;display:block;border-radius:3px;box-shadow:0 30px 60px rgba(0,0,0,.55)}
.sec{padding:90px 0}h2{font-size:2.8rem;margin:0 0 .5em;text-align:center;color:var(--g)}
.lead{font:italic 1.5rem/1.5 "Cormorant Garamond",serif;text-align:center;color:var(--c)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:32px}.card{background:#fff;border-top:4px solid var(--gold);padding:24px 28px;border-radius:8px;box-shadow:0 6px 20px rgba(60,40,20,.08)}
.card h3{margin:0;font-size:1.5rem;color:var(--c)}
.green{background:var(--g);color:var(--cr)}.green h2{color:var(--cr)}.muted{opacity:.75}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:36px}
.mv{background:rgba(255,255,255,.06);border:1px solid rgba(245,239,226,.18);border-radius:10px;padding:24px}
.mv span{font:700 2.4rem "Cormorant Garamond",serif;color:var(--gold)}.mv h3{margin:0 0 8px;font-size:1.5rem}.mv ol{margin:0;padding-left:26px;font-size:.92rem;line-height:1.8}
blockquote{margin:0;padding:36px 44px;background:#fff;border-left:5px solid var(--g2);border-radius:8px;font:1.45rem/1.6 "Cormorant Garamond",serif;box-shadow:0 6px 20px rgba(60,40,20,.08)}
blockquote p:first-child{margin-top:0}blockquote p:last-child{margin-bottom:0}
.coffee{background:var(--c);color:var(--cr)}.coffee h2{color:var(--cr);text-align:left}
.author{display:flex;gap:40px;align-items:flex-start}.headshot{flex:0 0 220px;width:220px;height:auto;border:3px solid var(--gold);border-radius:6px;filter:sepia(.15)}
.form{display:flex;gap:10px;max-width:480px;margin:24px auto 0}.form input{flex:1;padding:13px 16px;border:1px solid #c9b896;border-radius:6px;font-size:1rem}
.foot{background:#1f2e20;color:var(--cr);padding:48px 0 20px}.foot .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:20px;align-items:center}
.soc a{margin-left:20px;text-decoration:none;color:var(--gold)}.copy{text-align:center;opacity:.6;font-size:.85rem;margin-top:30px}
@media(max-width:860px){.nav nav a:not(.pill){display:none}.hero-grid,.two,.grid{grid-template-columns:1fr}.hero{padding:50px 0 130px}h1{font-size:2.9rem}.sub{font-size:1.35rem}
.cover{max-width:250px}h2{font-size:2.2rem}.author{flex-direction:column;align-items:center}.coffee h2{text-align:center}.form{flex-direction:column}.soc a{margin:0 16px 0 0}blockquote{padding:24px}}
.journey{background:#ebe1cc}.photos{display:grid;grid-template-columns:1fr 1fr;gap:40px;max-width:900px;margin:36px auto 0}
figure{margin:0;background:#fff;padding:14px 14px 20px;box-shadow:0 10px 30px rgba(60,40,20,.15);border-radius:4px}
figure img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block;filter:sepia(.2)}
figcaption{padding-top:14px;text-align:center}figcaption strong{display:block;font-family:Cinzel,serif;color:var(--c);font-size:1rem}figcaption span{display:block;font:italic 1.05rem/1.5 "Cormorant Garamond",serif;color:#5d4e3a;margin-top:6px}
.lead,.mv span{color:var(--c)}.mv span{color:var(--gold)}
@media(max-width:860px){.photos{grid-template-columns:1fr}.headshot{width:200px;flex-basis:auto}h1{font-size:2.4rem}.brand{font-size:1.05rem}}
.pill{white-space:nowrap}
@media(max-width:860px){.brand{font-size:.95rem}.nav .pill{padding:5px 12px;font-size:.8rem}.hero{background:linear-gradient(180deg,rgba(26,24,14,.85),rgba(38,34,18,.7)),url(img/mountains.webp) center/cover}}
.gallery{background:var(--cr)}.gal{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:36px}
.gal figure img{aspect-ratio:3/4;filter:sepia(.1)}
@media(max-width:860px){.gal{grid-template-columns:1fr}}
.movements{padding-bottom:0;text-align:center;font:italic 1.3rem/1.6 "Cormorant Garamond",serif;color:var(--c);margin:44px auto 0;max-width:680px;border-top:1px solid #d8c8a4;padding-top:28px}
.excerpts{background:#fbf7ee}.ex{display:grid;gap:56px;align-items:center;max-width:1040px;margin:80px auto 0}
.ex.has-img{grid-template-columns:1.7fr 1fr}.ex.has-img.flip{grid-template-columns:1fr 1.7fr}.ex.flip img{order:-1}
.ex.no-img{max-width:780px}
.ex blockquote{background:none;box-shadow:none;border:0;border-left:3px solid var(--gold);border-radius:0;padding:0 0 0 36px;font:500 1.6rem/1.75 "Cormorant Garamond",serif;color:var(--ink)}
.ex.no-img blockquote{border:0;padding:0;text-align:center;font-size:1.75rem}
.ex cite{display:block;margin-top:18px;font:600 .8rem Cinzel,serif;letter-spacing:.12em;color:var(--c);font-style:normal}
.ex img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:4px;opacity:.85;filter:sepia(.25) saturate(.8)}
@media(max-width:860px){.ex.has-img,.ex.has-img.flip{grid-template-columns:1fr;gap:24px}.ex img{order:-1;aspect-ratio:16/9;max-height:220px}.ex blockquote,.ex.no-img blockquote{font-size:1.3rem;padding-left:20px}.ex{margin-top:56px}}
