/* 2026 campsite tesserae: pine, canvas, weather slate */
:root{--pine:#2c4a38;--canvas:#efe4cc;--slate:#5a6e7a;--ink:#243028;--mute:#667068;--sans:"Noto Sans SC","PingFang SC",sans-serif;--mono:"IBM Plex Mono",ui-monospace,monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth}section[id]{scroll-margin-top:64px}
body{margin:0;background:var(--canvas);color:var(--ink);font-family:var(--sans);line-height:1.7}
img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}
code{font-family:var(--mono);color:var(--pine)}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:var(--pine);color:#fff;padding:8px;z-index:40}
.campbar{position:sticky;top:0;z-index:30;display:flex;justify-content:space-between;align-items:center;padding:10px 20px;background:#e5d8b8;border-bottom:3px dashed var(--pine)}
.nm{font-weight:700}.nm small{display:block;font-family:var(--mono);font-size:11px;font-weight:400;color:var(--mute)}
#nav{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center}#nav a{font-size:13px;color:var(--mute)}#nav a.on{color:var(--pine)}
.go{background:var(--pine);color:#efe4cc!important;padding:6px 12px;font-weight:700}
.menu{display:none;background:#fff;border:1px solid var(--pine);padding:6px 10px}
.camp{position:relative}.camp>img{width:100%;height:min(54vh,500px);object-fit:cover}
.cap{width:min(900px,calc(100% - 32px));margin:-48px auto 0;background:#f7f0dc;padding:28px;position:relative}
.k{font-family:var(--mono);font-size:12px;letter-spacing:.14em;color:var(--slate);margin:0 0 8px}
h1,h2,h3{margin:0 0 10px;line-height:1.2}h1{font-size:clamp(1.7rem,4vw,2.8rem)}
.pit{margin:16px 0;padding:12px;background:#e8dfc6;display:grid;grid-template-columns:repeat(4,1fr);gap:4px}
.pit span,.pit strong,.pit p{grid-column:1/-1}
.pit strong{display:block;margin:4px 0}.pit p{margin:0;color:var(--mute);font-size:14px}
.acts{display:flex;flex-wrap:wrap;gap:8px}
.btn{display:inline-flex;align-items:center;padding:9px 14px;background:var(--pine);color:#efe4cc;border:0;font-weight:700;font-size:14px}
.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--pine);font-weight:400}
.w{width:min(1080px,calc(100% - 32px));margin:0 auto;padding:64px 0}
.pine{background:#e2d6b4}
.tri,.g2{display:grid;gap:14px;margin-top:16px}.tri{grid-template-columns:repeat(3,1fr)}.g2{grid-template-columns:1fr 1fr}
.tri article,.g2 article{background:#f7f0dc;padding:16px}
.warn{outline:2px solid var(--slate)}ul{margin:0;padding-left:1.1em}
.row{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center;margin:36px 0}
.row.flip{direction:rtl}.row.flip>*{direction:ltr}
.n{font-family:var(--mono);color:var(--pine);font-size:12px}figure{margin:0}figcaption{font-size:13px;color:var(--mute);margin-top:6px}
footer{border-top:3px dashed var(--pine);background:#d4c7a4}
.end{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:22px 0}
@media(max-width:860px){.menu{display:block}#nav{display:none;position:absolute;top:50px;left:10px;right:10px;flex-direction:column;background:#fff;padding:10px}#nav.open{display:flex}.tri,.g2,.row{grid-template-columns:1fr}.row.flip{direction:ltr}.end{flex-direction:column;align-items:flex-start}}
