*{box-sizing:border-box}body{margin:0;background:#fafaf8;color:#202923;font-family:system-ui,sans-serif;line-height:1.65}main{max-width:1000px;margin:auto;padding:32px 22px 60px}a{color:#216344}h1{font-size:clamp(24px,4vw,36px);margin:24px 0 8px;letter-spacing:-.04em}p{margin:10px 0}label{display:block;margin-top:24px;font-weight:650}input{width:100%;max-width:420px;padding:12px;border:1px solid #ccd4cc;border-radius:8px;font:inherit;background:white}.grade-legend{display:flex;flex-wrap:wrap;gap:10px 20px;list-style:none;padding:0;margin:22px 0}.grade-legend li{display:flex;align-items:center;gap:6px}.grade-legend i{width:22px;height:4px;display:inline-block}.note,footer,#mapStatus,.map-note{font-size:14px;color:#626c65}.park-map{border-bottom:1px solid #d8ded8;padding:18px 0;scroll-margin-top:20px}.park-map summary{cursor:pointer;font-size:18px;font-weight:700}.park-map summary small{display:inline-block;margin-left:12px;font-size:13px;font-weight:400;color:#626c65}.park-map a{overflow-wrap:anywhere}.map-links{display:flex;flex-wrap:wrap;gap:8px 18px;padding:0;list-style:none}.map-links a{display:inline-block;padding:5px 0}.map-preview{margin:18px 0}.map-preview img{display:block;width:100%;height:auto;background:#f0f1eb;border:1px solid #e1e5df}.map-preview figcaption{font-size:14px;margin-top:6px}.map-preview .image-error{padding:18px;background:#f0f1eb}footer{border-top:1px solid #d8ded8;margin-top:32px;padding-top:20px}:focus-visible{outline:3px solid #b56a2f;outline-offset:4px}[hidden]{display:none!important}
.course-diagram { padding: 12px 0; border-top: 1px solid #e4e7e2; }
.course-diagram summary { font-size: 15px; font-weight: 500; }
.park-map h2 { font-size: 19px; margin-top: 28px; }
