:root{--paper:#f4efe4;--paper2:#ebe4d3;--card:#faf7f0;--ink:#1d2326;--ink2:#3c4548;--muted:#6d6f66;--line:#d6ccb7;--accent:#d4622b;--accent-d:#b44f1d;--dark:#0f1417;--dark2:#182025;--contour:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='160' viewBox='0 0 240 160'%3E%3Cg fill='none' stroke='%23c9bea6' stroke-width='1' opacity='.55'%3E%3Cpath d='M-10 40c40-22 70 18 120 0s80-30 140-6'/%3E%3Cpath d='M-10 62c45-20 72 20 122 2s82-28 138-4'/%3E%3Cpath d='M-10 84c48-18 74 22 124 4s84-26 136-2'/%3E%3Cpath d='M-10 128c52-16 76 18 126 4s86-22 134-2'/%3E%3C/g%3E%3C/svg%3E")}
*{box-sizing:border-box}
html,body{margin:0}
body{background:var(--paper);color:var(--ink);font:16px/1.65 Inter,system-ui,sans-serif;-webkit-font-smoothing:antialiased}
a{color:var(--accent-d)}
h1,h2,h3{font-family:"Barlow Condensed",sans-serif;font-weight:700;line-height:1.05;letter-spacing:.01em;margin:0 0 .4em;color:var(--ink)}
h1{font-size:clamp(2.4rem,6vw,4.2rem);text-transform:uppercase}
h2{font-size:clamp(1.7rem,3.5vw,2.4rem);text-transform:uppercase}
h3{font-size:1.35rem}
.mono,.lbl,.kicker{font-family:"IBM Plex Mono",monospace}
.kicker{color:var(--accent-d);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;margin:0 0 .6rem}
.lbl{display:block;color:var(--muted);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}
.top{position:sticky;top:0;z-index:1000;display:flex;align-items:center;gap:1rem;padding:.7rem 1.25rem;background:rgba(15,20,23,.96);backdrop-filter:blur(6px);border-bottom:1px solid #2a363e}
.brand{display:flex;align-items:center;gap:.55rem;color:#eef2f0;text-decoration:none;font-family:"Barlow Condensed";font-size:1.45rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}
.brand svg{width:28px;height:28px;fill:var(--accent)}
.brand b{color:var(--accent);font-weight:700}
.nav{margin-left:auto;display:flex;gap:1.3rem;align-items:center}
.nav a{color:#eef2f0;text-decoration:none;font-size:.93rem;opacity:.85}
.nav a:hover,.nav a.on{opacity:1;color:#f08a55}
.nav .btn-support{background:var(--accent);color:#fff!important;opacity:1;padding:.4rem .9rem;border-radius:3px;font-weight:600}
.menu-btn{display:none;margin-left:auto;background:none;border:1px solid #2a363e;color:#eef2f0;font-size:1.2rem;padding:.2rem .6rem;border-radius:3px}
.wip{background:var(--paper2);color:var(--ink2);font:.76rem "IBM Plex Mono",monospace;text-align:center;padding:.4rem 1rem;border-bottom:1px dashed var(--line)}
.wrap{max-width:1140px;margin:0 auto;padding:3.2rem 1.25rem}
.narrow{max-width:780px}
section+section{border-top:1px solid var(--line)}
.lede{font-size:1.15rem;color:var(--ink2);max-width:64ch}
.muted{color:var(--muted)}
.btns{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.2rem}
.btn{display:inline-block;padding:.65rem 1.1rem;border:1.5px solid var(--ink);color:var(--ink);text-decoration:none;font-weight:600;font-size:.92rem;border-radius:3px;background:none;cursor:pointer;font-family:Inter}
.btn.pri{background:var(--accent);border-color:var(--accent);color:#fff}
.btn:hover{border-color:var(--accent-d);color:var(--accent-d)}
.btn.pri:hover{background:var(--accent-d);color:#fff}
.contour{background-color:var(--paper);background-image:var(--contour)}
.hero{position:relative;background:var(--dark);padding:1.25rem 1.25rem 0}
.hero-in{max-width:1300px;margin:0 auto;position:relative}
.hero #map{height:clamp(380px,55vh,560px);border-radius:4px 4px 0 0;border:1px solid #2a363e;border-bottom:0}
.map-hint{position:absolute;top:.6rem;left:50%;transform:translateX(-50%);z-index:500;background:rgba(15,20,23,.82);color:#dfe6e4;font:.72rem "IBM Plex Mono",monospace;padding:.25rem .6rem;border-radius:3px;pointer-events:none}
.hero-card{position:absolute;left:1.25rem;bottom:1.25rem;z-index:500;max-width:460px;background:var(--paper);border:1px solid var(--line);padding:1.5rem 1.6rem 1.3rem;border-radius:4px;box-shadow:0 10px 30px rgba(0,0,0,.35)}
.hero-card h1{font-size:clamp(2.1rem,4.6vw,3.2rem)}
.hero-card p{margin:.2rem 0 0;color:var(--ink2)}
.facts{display:flex;gap:1.4rem;margin-top:.9rem;flex-wrap:wrap}
.facts div b{display:block;font:600 1.6rem "Barlow Condensed";color:var(--ink)}
.legend{position:absolute;right:1rem;bottom:1.25rem;z-index:500;background:var(--paper);border:1px solid var(--line);padding:.6rem .8rem;font:.74rem "IBM Plex Mono",monospace;border-radius:4px;color:var(--ink)}
.legend div{display:flex;align-items:center;gap:.5rem}
.legend i{width:18px;height:3px;display:inline-block}
.edge{height:26px;background:var(--paper);background-image:var(--contour);border-top:3px solid var(--accent)}
.leaflet-container{background:#e9e4d8;font-family:Inter}
.pk{background:var(--dark);border:2px solid var(--accent);color:#fff;border-radius:50%;width:26px!important;height:26px!important;margin:-13px 0 0 -13px!important;display:flex;align-items:center;justify-content:center;font:600 .74rem "IBM Plex Mono",monospace}
.th{background:#fff;color:var(--dark);border-radius:3px;width:24px!important;height:24px!important;margin:-12px 0 0 -12px!important;display:flex;align-items:center;justify-content:center;font:700 .72rem "IBM Plex Mono",monospace;border:2px solid var(--dark)}
.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:var(--card);color:var(--ink);border-radius:4px}
.leaflet-popup-content{margin:.8rem 1rem;font-size:.9rem}
.leaflet-popup-content b{font:600 1.15rem "Barlow Condensed";text-transform:uppercase}
.grid{display:grid;gap:1.2rem}
.g2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.g3{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
.g4{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.card{background:var(--card);border:1px solid var(--line);border-radius:4px;padding:1.3rem}
.card h3{margin-bottom:.3rem}
a.card{display:block;color:var(--ink);text-decoration:none;transition:border-color .15s,box-shadow .15s}
a.card:hover{border-color:var(--accent);box-shadow:0 4px 14px rgba(60,40,10,.08)}
.num{font:500 .8rem "IBM Plex Mono",monospace;color:var(--accent-d)}
.ht{font:600 1.05rem "IBM Plex Mono",monospace;color:var(--ink)}
.chips{display:flex;flex-wrap:wrap;gap:.4rem;margin:.6rem 0}
.chip{font:.72rem "IBM Plex Mono",monospace;letter-spacing:.03em;padding:.2rem .5rem;border:1px solid var(--line);border-radius:2px;color:var(--ink2);background:var(--paper)}
.chip.t-bus{color:#2f7a60;border-color:#8cc2ad;background:#eef6f1}
.chip.t-taxi{color:#7a5c12;border-color:#d9c38a;background:#faf4e2}
.chip.t-4x4{color:#9a3f16;border-color:#e3a988;background:#fbefe7}
.chip.t-car{color:var(--ink2)}
.region-head{display:flex;align-items:baseline;gap:.8rem;border-bottom:2px solid var(--ink);padding-bottom:.5rem;margin-bottom:1.2rem}
.region-head span{width:14px;height:14px;border-radius:2px;display:inline-block}
.prof{width:100%;height:auto;display:block;margin-top:.6rem}
.prof path.a{fill:rgba(212,98,43,.16)}
.prof path.l{fill:none;stroke:var(--accent);stroke-width:1.6}
.prof text{fill:var(--muted);font:10px "IBM Plex Mono",monospace}
.prof line{stroke:var(--line)}
.steps{counter-reset:s;display:grid;gap:1.2rem;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));margin-top:1.4rem}
.steps .card{position:relative;padding-top:2.4rem}
.steps .card:before{counter-increment:s;content:"0" counter(s);position:absolute;top:.9rem;left:1.3rem;font:500 .8rem "IBM Plex Mono",monospace;color:var(--accent-d)}
.timeline{border-left:2px solid var(--ink);margin:1.2rem 0 0 .4rem;padding-left:1.4rem}
.timeline div{margin-bottom:1.1rem;position:relative}
.timeline div:before{content:"";position:absolute;left:-1.85rem;top:.45rem;width:12px;height:12px;border-radius:50%;background:var(--paper);border:2px solid var(--accent)}
.crumb{font:.8rem "IBM Plex Mono",monospace;color:var(--muted);margin-bottom:1rem}
.crumb a{color:var(--muted)}
.peak-head{display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:end}
.peak-head .big{font:700 clamp(2.4rem,6vw,4rem) "Barlow Condensed";color:var(--accent);line-height:1}
.peak-map{height:440px;border:1px solid var(--line);border-radius:4px;margin:1.5rem 0}
.stats{display:flex;flex-wrap:wrap;gap:1.6rem;margin:.6rem 0}
.stats div b{display:block;font:600 1.5rem "Barlow Condensed"}
.route{border-left:3px solid var(--accent);padding-left:1rem;margin:1.6rem 0}
.note{background:#fbefe2;border:1px solid #e7b892;border-radius:4px;padding:.8rem 1rem;margin:1rem 0;font-size:.93rem}
.note b{color:var(--accent-d)}
.getting{background:var(--card);border:1px solid var(--line);border-radius:4px;padding:1.4rem;margin:2rem 0}
.getting dl,.th-card dl{display:grid;grid-template-columns:150px 1fr;gap:.55rem 1rem;margin:1rem 0 0}
.getting dt,.th-card dt{font:.72rem "IBM Plex Mono",monospace;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;padding-top:.2rem}
.getting dd,.th-card dd{margin:0}
.legs{list-style:none;margin:0;padding:0}
.legs li{padding:.45rem 0;border-bottom:1px dashed var(--line)}
.legs li:last-child{border:0}
.legs b{font-weight:600}
.legs .t{display:block;font:.82rem "IBM Plex Mono",monospace;color:var(--ink2)}
.th-card{background:var(--card);border:1px solid var(--line);border-radius:4px;padding:1.3rem 1.4rem;margin-bottom:1.2rem}
.th-top{display:flex;gap:1rem;align-items:flex-start;flex-wrap:wrap}
.th-id{flex:0 0 42px;height:42px;border-radius:3px;background:var(--dark);color:#fff;display:flex;align-items:center;justify-content:center;font:700 1rem "IBM Plex Mono",monospace}
.tbl{width:100%;border-collapse:collapse;font-size:.92rem}
.tbl th{text-align:left;font:500 .72rem "IBM Plex Mono",monospace;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);border-bottom:1.5px solid var(--ink);padding:.6rem .6rem .6rem 0}
.tbl td{border-bottom:1px solid var(--line);padding:.7rem .6rem .7rem 0;vertical-align:top}
.tblwrap{overflow-x:auto}
.plan-map{height:460px;border:1px solid var(--line);border-radius:4px;margin:1.5rem 0}
.post{border-top:1px solid var(--line);padding:2rem 0}
.post time{font:.78rem "IBM Plex Mono",monospace;color:var(--accent-d)}
.band{background:var(--dark);color:#eef2f0}
.band h2,.band .lede{color:#eef2f0}
.band .kicker{color:#f08a55}
.band .card{background:var(--dark2);border-color:#2a363e;color:#eef2f0}
.band .card .muted,.band .lbl{color:#9aa7a6}
.mail{font:600 clamp(1.05rem,3vw,1.5rem) "IBM Plex Mono",monospace;color:var(--accent);word-break:break-all}
.band .mail{color:#f08a55}
.person{display:flex;gap:1rem;align-items:flex-start}
.avatar{flex:0 0 64px;height:64px;border-radius:50%;background:var(--paper2);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font:600 1.4rem "Barlow Condensed";color:var(--accent-d)}
.foot{background:var(--dark);color:#eef2f0;padding:2.4rem 1.25rem 2rem;border-top:3px solid var(--accent)}
.foot a{color:#f08a55}
.foot .lbl{color:#9aa7a6}
.foot-grid{max-width:1140px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.4rem}
.foot .sponsor{font:600 1.35rem "Barlow Condensed";text-transform:uppercase;letter-spacing:.03em}
.fine{max-width:1140px;margin:1.8rem auto 0;font-size:.78rem;color:#9aa7a6}
.fine a{color:#9aa7a6}
@media (max-width:860px){
 .menu-btn{display:block}
 .nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:flex-start;background:var(--dark);border-bottom:1px solid #2a363e;padding:1rem 1.25rem;gap:.9rem}
 .nav.open{display:flex}
 .hero{padding:0}
 .hero #map{height:52vh;border-radius:0;border:0}
 .hero-card{position:relative;left:auto;bottom:auto;max-width:none;border-radius:0;border:0;box-shadow:none}
 .legend{display:none}
 .getting dl,.th-card dl{grid-template-columns:1fr}
 .getting dt,.th-card dt{padding-top:.6rem}
 .peak-head{grid-template-columns:1fr}
 .peak-map,.plan-map{height:340px}
}
