:root{--cream:#faf7ed;--ink:#3d4331;--muted:#7e826e;--berry:#c84b64;--pink:#f298ad;--leaf:#638b53;--border:#e2e4d1;--paper:#fffef7}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--cream);color:var(--ink);font-family:"Microsoft YaHei","PingFang SC",system-ui,sans-serif;-webkit-font-smoothing:antialiased;line-height:1.65}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #b45467;outline-offset:6px}button{color:inherit}.site-header{max-width:1240px;margin:auto;height:94px;padding:0 40px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e8e6d7}.brand{display:flex;gap:10px;align-items:center;font-weight:800;font-size:20px;letter-spacing:.03em}.brand small{display:block;font-size:10px;font-weight:500;letter-spacing:.16em;color:var(--muted);margin-top:1px}.berry-mark{font-size:36px;line-height:1}nav{display:flex;align-items:center;gap:31px;font-size:13px}nav a:hover{color:var(--berry)}.quick{padding:10px 17px;border:1px solid #d5d9bf;border-radius:8px;background:transparent;color:#606d49;font-size:12px}.quick span{margin-left:15px}.intro{max-width:1160px;margin:58px auto 35px;padding:0 42px;position:relative}.eyebrow{font-size:11px;letter-spacing:.17em;color:var(--leaf);font-weight:700;margin:0 0 15px}h1{font-size:clamp(30px,3.8vw,46px);line-height:1.4;letter-spacing:-.045em;margin:0 0 15px;font-weight:800}h1 span{color:var(--berry)}.lead{font-size:14px;color:var(--muted);line-height:1.95;margin:0}.intro-meta{display:flex;gap:25px;align-items:center;margin-top:24px;font-size:11px;color:#68735b}.intro-meta>span{display:flex;align-items:center;gap:7px}.pink-line{width:26px;height:6px;background:var(--pink);border-radius:8px}.green-line{width:26px;border-bottom:4px dashed #82ac68}.intro-meta .tap-note{margin-left:auto;color:#929681;font-size:10px}.journey-shell{max-width:1160px;margin:0 auto;position:relative;background:#ecf0cb url('assets/countryside.66d23aed19cc.png') center center/100% 100% no-repeat;border-radius:28px;overflow:hidden;border:1px solid #e3e6cf;box-shadow:0 16px 50px #738a5220}.map-intro{height:214px;display:flex;align-items:center;gap:27px;padding:35px 9%;position:relative}.map-intro:after{content:"";height:100px;width:70px;position:absolute;bottom:-25px;left:47%;background:#ee94aa;border:9px solid #f9bfd0;transform:rotate(-10deg);border-radius:42%}.map-intro p{font-size:13px;color:#596c49;line-height:1.9;text-shadow:0 1px 0 #fff8;margin-left:6px;position:relative;z-index:1}.wood{color:#fff9e8;background:repeating-linear-gradient(0deg,transparent 0 8px,#6035130c 8px 10px),linear-gradient(100deg,#b77a43,#d5a16a 45%,#ad6d37);border:3px solid #98622f;border-radius:9px;box-shadow:inset 0 0 0 2px #ecc8a277,0 5px 0 #75502c25;text-shadow:0 1px 2px #734720;position:relative;text-align:center;z-index:3}.wood:after{content:"";position:absolute;top:100%;height:28px;width:11px;background:linear-gradient(90deg,#926335,#cb9156,#a46d38);left:47%;z-index:-1}.wood.small{transform:rotate(-6deg);padding:10px 25px}.wood b{font-size:26px;display:block;letter-spacing:.1em;line-height:1.4}.wood span{font-size:10px;display:block;opacity:.9}.map{position:relative;width:100%;z-index:2}.roads{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.station{position:absolute;inset-inline:0;height:100px;scroll-margin-top:130px;z-index:3}.main-sign{position:absolute;top:0;left:calc(var(--x) - 10%);width:23%;min-height:96px;background:var(--paper);border:1.5px solid #df809a;border-radius:16px;box-shadow:0 5px 0 #ab5e7220,0 10px 25px #44552712;display:flex;align-items:center;gap:11px;padding:13px 15px;text-align:left;transition:transform .18s,box-shadow .18s}.main-sign:hover{transform:translateY(-4px);box-shadow:0 9px 0 #ab5e7215,0 14px 28px #44552719}.station-number{position:absolute;left:-25px;top:32px;background:#e57f97;border:3px solid #fffaf3;color:#fff;width:40px;height:40px;border-radius:50%;font-size:18px;font-weight:800;text-align:center;line-height:34px;box-shadow:0 2px 2px #b85d6b22}.main-art{width:44px;flex:0 0 44px;height:58px;border-radius:5px;background:#edf0cc;overflow:hidden;box-shadow:0 2px 3px #59634522}.main-art svg{width:100%;height:100%;display:block}.main-copy{flex:1;min-width:0}.main-copy strong{display:block;font-size:18px;letter-spacing:-.035em;white-space:nowrap}.main-copy small{display:inline-block;font-size:11px;color:#a25968;background:#faeced;border-radius:4px;padding:1px 7px;margin-top:4px;white-space:nowrap}.hint-arrow{position:absolute;right:10px;bottom:7px;font-size:10px;color:#b37881}.branch-group{position:absolute;left:76%;width:21%;top:-5px;display:flex;flex-direction:column;gap:16px}.branch-sign{display:flex;align-items:center;gap:9px;position:relative;width:100%;min-height:70px;border:0;background:transparent;padding:12px 22px 12px 13px;text-align:left;isolation:isolate;filter:drop-shadow(0 4px 0 #69814a20);transition:transform .18s}.branch-sign:before{content:"";position:absolute;inset:0;z-index:-1;background:#fffcf1;clip-path:polygon(0 0,88% 0,100% 50%,88% 100%,0 100%);border-radius:7px}.branch-sign:after{content:"";position:absolute;inset:-2px;z-index:-2;clip-path:polygon(0 0,88% 0,100% 50%,88% 100%,0 100%);background:#719758;border-radius:8px}.branch-sign:hover{transform:translateX(4px)}.branch-sign .small-art{width:30px;flex:0 0 30px;height:36px}.small-art svg{height:100%;width:100%}.branch-copy{min-width:0}.branch-sign strong{display:block;font-size:12px;line-height:1.45;font-weight:700}.branch-sign small{display:block;font-size:10px;color:#738163;margin-top:2px}.raz-sign{position:absolute;width:18%;left:3%;top:30px;min-height:72px;padding:13px 18px 13px 14px}.raz-sign strong{font-size:15px}.raz-sign .little-dot{height:7px;width:7px;background:#85ab6c;border-radius:50%;margin-right:4px;flex-shrink:0}.raz-sign small{font-size:11px}.mobile-branches{display:none}.phase-marker{position:absolute;left:7%;top:-110px;padding:8px 24px;transform:rotate(-5deg);font-size:19px;font-weight:800;letter-spacing:.1em}.handoff{position:absolute;left:30%;width:42%;top:-114px;padding:12px 18px;font-size:13px;font-weight:700;transform:rotate(-1deg)}.handoff small{display:block;font-size:10px;font-weight:400;opacity:.9;margin-top:3px}.journey-end{height:245px;text-align:center;padding-top:35px;position:relative}.journey-end:before{content:"";position:absolute;left:48%;width:60px;height:175px;top:-60px;border:8px solid #f9bfd0;border-top:0;background:#ee94aa;border-radius:0 0 60px 60px;transform:rotate(20deg)}.wood.wide{display:inline-flex;align-items:center;gap:15px;padding:12px 28px;font-size:21px;letter-spacing:.07em;transform:rotate(-2deg)}.wood.wide span{font-size:22px}.journey-end p{position:relative;z-index:4;font-size:12px;color:#567145;margin-top:35px}.route-note{max-width:1060px;margin:20px auto;color:#92957d;font-size:11px;padding:0 20px}.ideas-section{max-width:1080px;margin:100px auto 65px;padding:0 25px}.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px}.section-heading .eyebrow{margin-bottom:8px}h2{margin:0;font-size:28px;letter-spacing:-.04em}.leaf-drawing{font-size:70px;color:#91a679;line-height:1}.idea-list{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.idea{border-top:1px solid #dce1c9;padding-top:21px}.idea-index{color:#b2b899;font-family:Georgia,serif;font-size:30px}.idea h3{font-size:16px;margin:13px 0 9px}.idea p{font-size:12px;color:var(--muted);line-height:1.95;margin:0}.weekly{margin-top:38px;border-radius:16px;background:#eef0e1;padding:24px 28px;display:flex;align-items:center;justify-content:space-between;gap:20px}.weekly b{font-size:14px}.weekly p{font-size:11px;color:#7c8568;margin:0}footer{max-width:1160px;margin:auto;border-top:1px solid #e1e4d3;padding:30px 25px 36px;display:flex;align-items:center;justify-content:space-between;gap:20px}footer .brand{font-size:16px}footer .berry-mark{font-size:27px}footer p{font-size:12px;color:#727c61;margin:0}footer small{font-size:10px;opacity:.7}footer>a:last-child{font-size:11px;color:#788363}.lesson-dialog,.quick-dialog{border:1px solid #f1ddcf;border-radius:23px;background:#fffdf6;color:var(--ink);width:min(610px,calc(100% - 28px));max-height:calc(100dvh - 35px);padding:0;box-shadow:0 35px 90px #28351c44}.lesson-dialog::backdrop,.quick-dialog::backdrop{background:#26312480;backdrop-filter:blur(5px)}.dialog-inner{padding:32px}.close{position:absolute;right:15px;top:13px;width:33px;height:33px;border:1px solid #e0e4d2;border-radius:50%;background:#fffdf6;color:#7e866c;font-size:23px;line-height:1}.close:hover{background:#f6e7e5;color:var(--berry)}.detail-heading{display:flex;gap:17px;align-items:center;margin-top:18px}.detail-heading h2{font-size:25px;line-height:1.4}.detail-heading #detailArt{width:62px;height:76px;flex-shrink:0;background:#edf0d6;border-radius:8px;overflow:hidden}.detail-heading svg,.detail-heading img{height:100%;width:100%;object-fit:cover}.original{font-size:10px;color:#9da086;margin:3px 0}.detail-ar{font-size:12px;color:#ae6170;margin:5px 0 0}.detail-intro{font-size:13px;color:#7d826e;line-height:1.9;margin:22px 0}.empty-video{aspect-ratio:16/9;background:linear-gradient(140deg,#e9eddc,#f4eee1);border-radius:13px;display:flex;align-items:center;justify-content:center;flex-direction:column;border:1px solid #e2e5d5;color:#86916f}.empty-video svg{width:34px;height:34px;margin-bottom:10px;opacity:.6}.empty-video strong{font-size:14px;font-weight:500}.empty-video p{font-size:10px;color:#9ba18b;margin:7px 0 0}.real-video{width:100%;aspect-ratio:16/9;border-radius:13px;background:#222}.video-title{font-size:12px}#relatedSection h3{font-size:13px;margin:25px 0 10px}.related{display:flex;flex-wrap:wrap;gap:7px}.related button{background:#f1f4e6;border:1px solid #dce3c9;border-radius:7px;font-size:11px;padding:7px 11px;color:#66804e}.related button:hover{background:#e4edcf}.sample-note{font-size:10px;color:#a1a58e;line-height:1.8;margin-top:22px}.close-bottom{width:100%;border:0;border-radius:9px;background:#638550;color:#fff;padding:12px;font-size:12px;margin-top:6px}.quick-dialog{padding:32px;width:min(440px,calc(100% - 28px))}#quickLinks{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:25px}#quickLinks button{padding:11px 4px;font-size:12px;background:#f2f3e7;border:1px solid #dce2cb;border-radius:8px}#quickLinks button:hover{background:#e8ecd7}body.dialog-open{overflow:hidden}img{max-width:100%}
@media(min-width:760px) and (max-width:1000px){.main-sign{width:25%;left:calc(var(--x) - 11%);gap:7px;padding:11px 10px}.main-art{width:33px;flex-basis:33px;height:49px}.main-copy strong{font-size:15px}.main-copy small{font-size:10px}.branch-group{width:21.5%;left:76%}.branch-sign{gap:5px;padding-left:8px}.small-art{display:none}.branch-sign strong{font-size:11px}.raz-sign{width:19%;left:2%}.raz-sign strong{font-size:13px}}
@media(max-width:759px){html{scroll-padding-top:25px}.site-header{height:76px;padding:0 19px}.brand{font-size:17px}.brand small{font-size:9px;letter-spacing:.08em}.berry-mark{font-size:30px}nav{gap:12px}nav a{display:none}.quick{font-size:11px;padding:8px 11px}.quick span{margin-left:4px}.intro{margin:35px auto 25px;padding:0 23px}.intro .eyebrow{font-size:10px;margin-bottom:13px}h1{font-size:29px;line-height:1.5}h1 span{display:block}.lead{font-size:12px}.intro-meta{gap:16px;font-size:10px;margin-top:20px}.intro-meta .tap-note{display:none}.journey-shell{width:calc(100% - 20px);border-radius:19px;background-size:auto 100%;background-position:center}.map-intro{height:180px;padding:25px 9%;gap:18px}.map-intro p{font-size:11px}.map-intro:after{left:26%;width:48px}.wood.small{padding:9px 18px}.wood b{font-size:22px}.main-sign{left:21%;width:67%;padding:13px 18px;min-height:95px;border-radius:14px}.main-art{width:43px;flex-basis:43px;height:56px}.main-copy strong{font-size:18px}.main-copy small{font-size:11px}.branch-group,.raz-sign{display:none}.station-number{left:-22px;width:37px;height:37px;line-height:31px;font-size:16px}.mobile-branches{display:block;position:absolute;top:113px;left:23%;max-width:69%;padding:7px 11px;border-radius:8px;border:1px solid #90ab74;background:#fbfff1e6;color:#698551;font-size:11px;box-shadow:0 2px 0 #65834516}.phase-marker{left:57%;top:-90px;font-size:16px;padding:5px 18px}.handoff{left:10%;width:80%;font-size:11px;top:-107px;padding:11px}.handoff small{font-size:9px}.journey-end{height:220px;padding-top:40px}.journey-end:before{left:30%;width:48px;height:175px}.wood.wide{padding:12px 15px;gap:6px;font-size:15px;max-width:90%;letter-spacing:.02em}.journey-end p{font-size:10px}.route-note{font-size:10px;padding:0 23px;line-height:1.9}.ideas-section{margin:65px auto 45px;padding:0 24px}.ideas-section h2{font-size:24px}.idea-list{grid-template-columns:1fr;gap:26px}.idea{display:grid;grid-template-columns:38px 1fr;column-gap:12px;padding-top:18px}.idea-index{grid-row:1/3;font-size:26px}.idea h3{margin:0 0 7px;font-size:15px}.idea p{font-size:12px}.weekly{display:block;padding:21px;margin-top:28px}.weekly p{margin-top:9px;font-size:10px;line-height:1.9}.weekly b{font-size:13px}footer{padding:25px 22px;flex-wrap:wrap}footer .brand{font-size:14px}footer p{font-size:10px}footer>a:last-child{display:none}.dialog-inner{padding:27px 22px}.detail-heading h2{font-size:21px}.detail-intro{font-size:12px}.dialog-inner .eyebrow{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* The SVG owns the road, including its opening; avoid a second decorative path. */
.map-intro:after{display:none}

/* Scenic trail: each fork is a planted timber sign, positioned independently. */
.journey-shell{background-color:#eef0d3;background-size:100% 100%}
.main-sign{width:24%;left:calc(var(--x) - 12%);min-height:112px;gap:14px;padding:14px 20px 14px 16px;background:linear-gradient(105deg,#fffef8,#faf7ea);border:2px solid #d8a1a5;border-radius:17px;box-shadow:0 5px 0 #c37c8723,0 12px 24px #52613a16}
.main-art{width:55px;flex-basis:55px;height:77px;overflow:visible;background:transparent;box-shadow:none;border-radius:0}
.book-cover{display:block;object-fit:contain;width:100%;height:100%;border-radius:2px;filter:drop-shadow(2px 3px 2px #453e382d)}
.main-copy strong{font-size:19px}.main-copy small{font-size:11px;margin-top:7px}
.station-number{left:-25px;top:38px;width:42px;height:42px;line-height:36px;font-size:19px}
.branch-group{display:contents}
.branch-sign,.raz-sign{position:absolute;min-height:106px;padding:12px 20px 12px 28px;gap:12px;overflow:visible;transform:rotate(var(--tilt,0deg));transform-origin:center 100%;filter:drop-shadow(0 4px 2px #59442d20);border-radius:0}
.branch-sign:before{inset:0;background:repeating-linear-gradient(0deg,#fff0 0 9px,#96724412 10px,#fff0 11px 18px),linear-gradient(95deg,#e2c494,#f3dfb6 42%,#debd88);clip-path:polygon(0 50%,11% 0,100% 0,100% 100%,11% 100%);border-radius:4px;box-shadow:inset 0 -7px 0 #b78b4a26,inset 0 3px 0 #fff8}
.branch-sign:after{inset:-3px;clip-path:polygon(0 50%,11% 0,100% 0,100% 100%,11% 100%);border-radius:5px;background:linear-gradient(0deg,#9f7c47,#bfa16b 50%,#ab8755)}
.branch-sign .signpost{display:block;position:absolute;z-index:-3;left:48%;top:calc(100% - 3px);height:62px;width:15px;background:repeating-linear-gradient(90deg,#0000 0 4px,#65472217 4px 5px),linear-gradient(90deg,#a57d48,#d0b279 50%,#a4804e);border:1px solid #b89560;border-top:0;border-radius:0 0 2px 2px;box-shadow:3px 3px 0 #7e774017;transform:rotate(1deg)}
.branch-sign .signpost:after{content:"";position:absolute;left:-16px;bottom:-8px;width:55px;height:14px;border-radius:50%;background:radial-gradient(ellipse,#617d3e3d,transparent 70%);transform:rotate(-5deg)}
.sign-rivet{position:absolute;right:11px;top:11px;width:4px;height:4px;border-radius:50%;background:#b8945d;box-shadow:0 1px 0 #fff9,0 75px 0 #a88d61}
.branch-sign:hover{transform:translateY(-5px) rotate(var(--tilt,0deg));filter:drop-shadow(0 8px 4px #59442d30)}
.branch-sign .small-art{display:block;height:77px;width:49px;flex:0 0 49px;overflow:visible;margin-top:-4px}
.branch-sign .small-art svg{opacity:.65}
.branch-copy{flex:1;min-width:0;color:#51412c;text-shadow:0 1px 0 #fff5}
.branch-sign strong{font-size:14px;font-weight:800;line-height:1.5;overflow-wrap:anywhere}
.branch-sign small{font-size:11px;color:#82704e;line-height:1.5;margin-top:5px}
.branch-sign em{display:block;font-size:9px;font-style:normal;color:#8b7956;margin-top:5px;letter-spacing:.03em}
.raz-sign{padding:13px 28px 13px 18px;min-height:88px}
.raz-sign:before,.raz-sign:after{clip-path:polygon(0 0,89% 0,100% 50%,89% 100%,0 100%)}
.raz-sign:before{background:repeating-linear-gradient(0deg,#fff0 0 8px,#59754812 9px,#fff0 10px 17px),linear-gradient(100deg,#d4e0bb,#e6edd2 50%,#c4d3a9)}
.raz-sign:after{background:linear-gradient(0deg,#728c57,#9aaf79,#7d9560)}
.raz-sign strong{font-size:16px;line-height:1.5}.raz-sign small{font-size:11px;color:#687e50}.raz-sign em{color:#7c8c62}
.raz-sign .little-dot{width:7px;height:7px;flex-shrink:0;background:#819d5a;border-radius:50%;box-shadow:0 1px 0 #fff8}
.raz-sign .signpost{height:49px}.raz-sign .sign-rivet{top:8px;right:32px;background:#9daf7d;box-shadow:0 1px 0 #fff8,0 67px 0 #9daf7d}
.scenery-vignette{position:absolute;z-index:1;width:var(--scene-width,230px);height:auto;pointer-events:none;max-width:27%;filter:drop-shadow(0 7px 5px #60794016)}
.scenery-vignette.left{left:2%}.scenery-vignette.right{right:2%}
.phase-marker{left:5%;top:-130px}.handoff{top:-125px}
.detail-heading #detailArt{width:90px;height:126px;background:transparent;overflow:visible;border-radius:0}.detail-heading img{object-fit:contain;filter:drop-shadow(3px 5px 3px #443e3326)}
.cover-source{font-size:10px;color:#9b9b85;line-height:1.8;margin:-9px 0 18px}.cover-source a{color:#80916b;text-decoration:underline;text-underline-offset:3px}
@media(min-width:760px) and (max-width:1000px){.main-sign{width:26%;left:calc(var(--x) - 13%);padding:13px 11px;gap:8px}.main-art{width:42px;flex-basis:42px;height:65px}.main-copy strong{font-size:16px}.main-copy small{font-size:10px}.branch-sign{padding:11px 13px 11px 20px;gap:7px}.branch-sign .small-art{width:35px;flex-basis:35px;height:60px}.branch-sign strong{font-size:11px}.branch-sign small{font-size:9px}.branch-sign em{font-size:8px}.raz-sign{padding-left:12px;min-height:85px}.raz-sign strong{font-size:13px}.raz-sign small{font-size:10px}}
@media(max-width:759px){.main-sign{left:21%;width:67%;min-height:114px;padding:13px 13px;gap:10px}.main-art{width:52px;flex-basis:52px;height:77px}.main-copy strong{font-size:18px}.main-copy small{font-size:11px}.station-number{left:-23px;top:40px;width:38px;height:38px;line-height:32px;font-size:16px}.branch-sign,.raz-sign{display:none}.mobile-branches{top:134px;left:23%;font-size:11px}.scenery-vignette{max-width:33%;width:115px!important;opacity:.92}.scenery-vignette.left{left:0}.scenery-vignette.right{right:-1%}.phase-marker{left:58%;top:-88px}.handoff{top:-105px}.detail-heading #detailArt{width:73px;height:103px}.detail-heading h2{font-size:20px}}
.wood-berry{position:absolute;left:-18px;top:-21px;font-size:33px!important;opacity:1!important;transform:rotate(-10deg);text-shadow:none;filter:drop-shadow(0 2px 1px #79624025)}
.strawberry-patch{position:absolute;z-index:2;width:110px;pointer-events:none;opacity:.9;transform:rotate(var(--patch-tilt,0deg))}
@media(max-width:759px){.strawberry-patch{width:70px;opacity:.85}.wood-berry{font-size:28px!important}}
/* A quieter, narrower country footpath, with shorter desktop stages. */
.intro{margin-top:40px;margin-bottom:27px}.map-intro{height:173px}
.pink-line{background:#d8c29a}.green-line{border-color:#bac798}
.phase-marker{top:-90px;font-size:17px;padding:6px 21px}.handoff{top:-96px;padding:10px 16px}
.journey-end:before{border:7px solid #dacaab;border-top:0;background:#ecdfc4;width:43px;left:48.5%;opacity:.95}
.branch-sign .signpost{height:45px}.raz-sign .signpost{height:37px}
.scenery-vignette.left{left:8%}
@media(max-width:759px){.intro{margin-top:30px;margin-bottom:23px}.map-intro{height:160px}.phase-marker{top:-80px}.handoff{top:-99px}.journey-end:before{left:30%;width:36px}.scenery-vignette.left{left:1%}}
