:root{--night:#06191d;--teal:#07333a;--turquoise:#53dfd4;--gold:#efb84d;--cream:#fff1c9;--vermilion:#e2633d;--purple:#b878b7;--row-step:300px;--first-stop:150px}
*{box-sizing:border-box}body{margin:0;background:var(--night);color:var(--cream);font-family:'Source Sans 3',sans-serif}a{color:inherit}button{font:inherit}a,button{-webkit-tap-highlight-color:transparent;touch-action:manipulation}:focus-visible{outline:3px solid var(--turquoise);outline-offset:6px}button{cursor:pointer}
.studio-header{min-height:76px;padding:12px max(24px,4vw);display:flex;align-items:center;gap:32px;background:#041114;border-bottom:1px solid #d9ab4940}.brand{font-family:'Cormorant Garamond',serif;text-align:center;text-decoration:none;line-height:.82;color:#f7c766;flex:none}.brand b{display:block;font-size:40px}.brand span{font-size:12px;letter-spacing:.07em;font-weight:700}nav{display:flex;gap:25px;align-items:center;margin-left:auto}nav a{font-size:15px;text-decoration:none;color:#d2ded9}nav a:hover,nav a.current{color:#f8c66f}.path-level{font-size:11px;letter-spacing:.16em;border:1px solid #d8ae4c66;color:#f5c979;padding:8px 12px;border-radius:4px;white-space:nowrap}
main{max-width:1440px;margin:auto;padding:0 4vw}.page-intro{padding:28px 0 25px;display:flex;align-items:center;justify-content:space-between;gap:30px}.eyebrow{font-size:11px;letter-spacing:.18em;color:#dfb76d;font-weight:700;margin:0 0 8px}.eyebrow a{text-decoration:none}.eyebrow span{padding:0 8px;color:#87aaa2}h1{font:700 57px/.96 'Cormorant Garamond',serif;margin:0 0 10px}h1 em{font-style:normal;color:#f6bb51}.intro-copy{margin:0;color:#c6d9d1;font-size:17px}.journey-key{display:flex;align-items:flex-start;gap:12px;font-size:16px;flex:none;color:#efddae}.journey-key small{display:block;font-size:13px;color:#a9c1b8;margin-top:4px}.key-dot{width:13px;height:13px;border-radius:50%;background:#e9ad44;box-shadow:0 0 20px #eebc5366;flex:none;margin-top:5px}
.map-shell{padding-bottom:28px}.adventure-map{height:1740px;position:relative;isolation:isolate;overflow:hidden;border-radius:18px;border:1px solid #c4a45688;background:radial-gradient(ellipse at 30% 10%,#276a64,#0a383c 50%,#09252b);box-shadow:0 20px 70px #0005,inset 0 0 0 7px #c4a45611}.landscape{position:absolute;inset:0;z-index:-3;background:none center/100% 100% no-repeat;opacity:.95}.landscape:after{content:"";position:absolute;inset:0;background:linear-gradient(#06282b22,#031c2744 60%,#04192366)}.map-grain{position:absolute;inset:0;z-index:-2;pointer-events:none;background:radial-gradient(circle at 40% 60%,#f9c96822 0 1px,transparent 2px) 0 0/87px 101px,linear-gradient(90deg,#04232755,transparent 12%,transparent 88%,#04232755)}
.journey-road{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;overflow:visible}.journey-road path{fill:none;stroke-linecap:round;stroke-linejoin:round}.road-shadow{stroke:#031618a6;stroke-width:36;transform:translateY(5px)}.road-glow{stroke:#e5a93d66;stroke-width:27}.road-edge{stroke:#75552d;stroke-width:29}.road-surface{stroke:#e2bc73;stroke-width:23}.road-stitch{stroke:#fff1bc;stroke-width:1.5;stroke-dasharray:3 10;opacity:.95}
.journey-stops{margin:0;padding:0;list-style:none}.journey-stop{position:absolute;left:calc(18% + var(--column)*32%);top:calc(var(--first-stop) + var(--row)*var(--row-step));width:250px;transform:translateX(-50%);z-index:2}.stop-link{display:flex;flex-direction:column;align-items:center;text-decoration:none;position:relative;gap:9px;transition:transform .2s;--pin-colour:#08777c}.stop-link:hover{transform:translateY(-5px)}.stop-link:focus-visible{border-radius:12px}.stop-pin{display:grid;place-items:center;width:54px;height:54px;flex:none;font:700 26px 'Cormorant Garamond',serif;color:#fff4cd;background:radial-gradient(circle at 35% 20%,#299b9a,var(--pin-colour));border:3px solid #f9d889;border-radius:50%;box-shadow:0 0 0 4px #553e27,0 5px 12px #001214a0,0 0 20px #f6c26e35;position:relative}.stop-pin:after{content:"";position:absolute;inset:5px;border:1px solid #ecce8a66;border-radius:50%}.stop-sign{display:flex;flex-direction:column;justify-content:center;min-height:109px;width:100%;padding:13px 17px 11px;background:linear-gradient(100deg,#fff2c3e8,#f7dc9eea),url('assets/parchment-texture.webp') center/cover;color:#273733;border:1px solid #ebc772;border-radius:7px 15px 8px 17px;box-shadow:0 3px 0 #9e6739,0 8px 20px #02161980;position:relative;text-align:center}.stop-sign:before{content:"";position:absolute;inset:5px;border:1px solid #ad7b3938;border-radius:4px 10px 4px 12px;pointer-events:none}.stop-sign strong{font:700 24px/1.03 'Cormorant Garamond',serif;letter-spacing:.01em}.stop-sign>span{font-size:14px;line-height:1.25;margin-top:5px;color:#5b4f3b}.stop-sign small{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#866134;margin-top:10px}.stop-sign small b{font-size:12px;color:#14565b}.journey-stop:nth-child(n+4):nth-child(-n+6) .stop-link{--pin-colour:#a6442a}.journey-stop:nth-child(n+7):nth-child(-n+9) .stop-link{--pin-colour:#714878}.journey-stop:nth-child(n+10):nth-child(-n+12) .stop-link{--pin-colour:#076967}.journey-stop:nth-child(n+13) .stop-link{--pin-colour:#a46c18}
.stop-03 .stop-sign strong,.stop-10 .stop-sign strong{font-size:22px}.terrain-caption{position:absolute;left:7%;font-size:11px;letter-spacing:.17em;font-weight:700;color:#fae3abcc;text-shadow:0 2px 5px #000;pointer-events:none}.terrain-caption span{display:inline-block;color:#69d9c8;margin-right:11px;font-size:10px;border-bottom:1px solid #67d9c844;padding-bottom:4px}.region-one{top:115px;left:45%}.region-two{top:416px;left:10%}.region-three{top:716px;left:44%}.region-four{top:1016px;left:9%}.region-five{top:1316px;left:43%}
.journey-start{position:absolute;left:7%;top:30px;display:flex;gap:12px;align-items:center}.terminal-pin{display:grid;place-items:center;width:43px;height:43px;flex:none;background:#102f35;color:#fcd375;border:2px solid #e9ba62;border-radius:50%;font-size:24px;box-shadow:0 0 22px #e6b44b33}.journey-start strong{display:block;font-size:14px;letter-spacing:.13em;color:#ffe4a2}.journey-start div>span{font-size:12px;color:#d4ded0;display:block;margin-top:3px}.journey-finish{position:absolute;right:6%;top:1585px;display:flex;align-items:center;gap:18px;background:linear-gradient(135deg,#123d3eee,#071c23f2);border:1px solid #e9bd60;border-radius:8px 28px 9px 28px;padding:18px 23px;box-shadow:0 9px 30px #021215b0,0 0 35px #e7b34233}.journey-finish .terminal-pin{width:62px;height:62px;font-size:34px;background:radial-gradient(#fce695,#d99a32);color:#714729;border:2px solid #ffedb5}.finish-kicker{display:block;font-size:10px;font-weight:700;letter-spacing:.2em;color:#62ded0}.journey-finish strong{display:block;font:700 32px/1.1 'Cormorant Garamond',serif;color:#ffe5a6;margin:5px 0}.journey-finish div>span:last-child{font-size:13px;color:#d1ded1}
.mascot-guide{position:absolute;pointer-events:none;z-index:1}.mascot-guide img{display:block;filter:drop-shadow(0 7px 8px #0005);width:100%}.mascot-guide>span{display:block;color:#f8e1a5;text-align:center;font:600 18px 'Cormorant Garamond',serif;text-shadow:0 2px 6px #000;margin-top:3px}.guide-start{top:16px;right:18%;width:135px;transform:rotate(7deg)}.guide-middle{top:916px;left:43%;width:150px;transform:rotate(-7deg)}.guide-middle img{mask-image:radial-gradient(ellipse at center,#000 45%,transparent 73%);border-radius:50%}.guide-finish{top:1535px;left:42%;width:158px;transform:rotate(-6deg)}
.map-footnote{margin:16px 0 0;text-align:center;font-size:14px;color:#bccdbf}.map-footnote span{color:#e6b55c;padding-right:7px}footer{padding:24px 4vw 30px;background:#041114;border-top:1px solid #cda05033;display:flex;justify-content:space-between;gap:24px;font-size:13px;color:#a8c0b5}footer a{text-decoration:none;color:#e8c982}.noscript-message{padding:20px;background:#153f42;border:1px solid #d0a050}
.stop-dialog{max-width:620px;width:calc(100% - 32px);max-height:88vh;padding:27px 32px 25px;color:#2b3832;background:#fcf1d5 url('assets/parchment-texture.webp') center/cover;border:2px solid #d4ad5b;border-radius:9px 25px 9px 25px;box-shadow:0 25px 90px #0009;overflow:auto}.stop-dialog::backdrop{background:#03191deb;backdrop-filter:blur(5px)}.dialog-top{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:20px}.dialog-step{font-size:12px;letter-spacing:.13em;font-weight:700;color:#876326}.dialog-close{border:1px solid #a8874b;background:#fff7e6;color:#35514b;border-radius:4px;padding:8px 12px;font-size:14px}.dialog-kicker{margin:0 0 6px;font-size:12px;font-weight:700;color:#087e7f;text-transform:uppercase;letter-spacing:.1em}.stop-dialog h2{font:700 39px/1.04 'Cormorant Garamond',serif;margin:0 0 14px}.dialog-summary{font-size:17px;line-height:1.5;margin:0 0 19px}.stop-dialog h3{font:700 23px 'Cormorant Garamond',serif;margin:0 0 10px}.dialog-focus{padding:16px 18px;background:#fff9e6b0;border-left:3px solid #147c7e;border-radius:0 7px 7px 0}.dialog-focus ul{margin:0;padding-left:18px;line-height:1.6;font-size:15px}.dialog-resources section{padding-top:20px}.dialog-resources section p{font-size:15px;margin:5px 0 10px;line-height:1.5}.dialog-resources a{color:#096f76;font-weight:700;line-height:1.4}.dialog-resources small{display:block;margin:6px 0;color:#7a6544;line-height:1.4}.planned-resource{font-size:13px;color:#79674a;font-style:italic}.lesson-placeholder{font-size:13px;line-height:1.5;border-top:1px solid #c4a76e66;padding-top:16px;margin-top:21px;color:#766449}.lesson-placeholder strong{display:block;color:#76603c}.dialog-navigation{display:flex;justify-content:space-between;gap:16px;margin-top:20px}.dialog-navigation button{padding:9px 12px;font-size:14px;border:1px solid #a5aa86;border-radius:4px;background:#fff8e4;color:#315b54}.dialog-navigation button:disabled{opacity:.4;cursor:default}
@media(min-width:1700px){main{padding:0 56px}}
@media(max-width:1100px) and (min-width:761px){.journey-stop{width:215px}.stop-sign{padding:12px 12px 11px}.stop-sign strong{font-size:23px}.stop-03 .stop-sign strong,.stop-10 .stop-sign strong{font-size:20px}.journey-key{font-size:14px}.journey-key small{font-size:12px}.terrain-caption{font-size:10px}.guide-middle{left:43%;width:125px}.guide-finish{left:36%}.journey-finish{right:4%;padding:16px 20px}}
@media(max-width:760px){.studio-header{padding:15px 22px;gap:20px;flex-wrap:wrap}.brand b{font-size:35px}.brand span{font-size:10px}nav{gap:19px}nav a{font-size:14px}.path-level{display:none}main{padding:0 18px}.page-intro{padding:24px 4px 23px;display:block}h1{font-size:51px}.intro-copy{font-size:16px;max-width:530px;line-height:1.45}.journey-key{margin-top:15px;font-size:14px;gap:10px}.journey-key small{display:inline;margin-left:7px;font-size:12px}.adventure-map{--row-step:228px;--first-stop:160px;height:calc(160px + 15 * 228px + 75px);border-radius:14px}.landscape{background-size:auto 1900px;background-position:center top;background-repeat:repeat-y;opacity:.55}.landscape:after{background:linear-gradient(90deg,#062b34aa,transparent 60%,#062b3466)}.map-grain{background:linear-gradient(90deg,#06252a99,transparent 60%,#06252a99)}.journey-stop{top:calc(var(--first-stop) + var(--index)*var(--row-step));left:27%;width:220px;transform:none}.stop-link{align-items:flex-start;gap:9px}.stop-pin{width:51px;height:51px;transform:translateX(-50%)}.stop-sign{width:220px;margin-left:-25px;min-height:109px}.journey-stop:nth-child(even){left:62%}.journey-stop:nth-child(even) .stop-sign{margin-left:-175px}.stop-sign strong{font-size:24px}.stop-sign>span{font-size:14px}.stop-03 .stop-sign strong,.stop-10 .stop-sign strong{font-size:22px}.terrain-caption{display:none}.journey-start{top:30px;left:13%;gap:12px}.journey-start .terminal-pin{width:39px;height:39px}.guide-start{top:40px;right:10%;width:105px}.guide-start>span{font-size:15px}.guide-middle{top:calc(160px + 7 * 228px - 60px);left:auto;right:3%;width:105px}.guide-middle>span{display:none}.guide-finish{top:calc(160px + 15 * 228px - 98px);left:auto;right:9%;width:114px}.journey-finish{top:calc(160px + 15 * 228px - 40px);right:6%;left:6%;padding:18px 20px;gap:15px}.journey-finish strong{font-size:30px}.journey-finish .terminal-pin{width:53px;height:53px}.map-footnote{font-size:13px;line-height:1.45;padding:0 8px}footer{padding:24px;flex-wrap:wrap;gap:15px}footer span{order:3;width:100%;text-align:center;margin-top:7px}.stop-dialog{padding:23px 25px}.stop-dialog h2{font-size:35px}}
@media(max-width:450px){.studio-header{padding:12px 18px;gap:12px;align-items:center}nav{gap:13px}nav a{font-size:12px}.brand b{font-size:31px}.brand span{font-size:9px}.studio-header nav .current{display:none}main{padding:0 12px}.page-intro{padding:23px 5px 22px}h1{font-size:49px}.eyebrow{font-size:10px}.journey-key small{display:block;margin-left:0;margin-top:3px}.adventure-map{--row-step:226px;--first-stop:158px;height:calc(158px + 15 * 226px + 90px)}.journey-stop{left:22%;width:205px}.journey-stop:nth-child(even){left:77%}.stop-sign{width:205px;margin-left:-25px;padding:12px 13px 10px}.journey-stop:nth-child(even) .stop-sign{margin-left:-180px}.stop-sign strong{font-size:23px}.stop-03 .stop-sign strong,.stop-10 .stop-sign strong{font-size:21px}.stop-sign small{font-size:9px}.journey-start{left:8%;top:28px;gap:9px}.journey-start div>span{font-size:11px}.journey-start strong{font-size:12px}.guide-start{right:5%;top:53px;width:90px}.guide-start>span{font-size:14px}.guide-middle{top:calc(158px + 7 * 226px - 64px);right:2%;width:80px}.guide-finish{top:calc(158px + 15 * 226px - 88px);right:6%;width:100px}.journey-finish{top:calc(158px + 15 * 226px - 28px);left:5%;right:5%;padding:17px 14px;gap:12px}.journey-finish strong{font-size:27px}.journey-finish div>span:last-child{font-size:12px}.journey-finish .terminal-pin{width:43px;height:43px;font-size:27px}.road-edge{stroke-width:23px}.road-surface{stroke-width:17px}.road-shadow{stroke-width:29px}.road-glow{stroke-width:23px}.stop-dialog{width:calc(100% - 24px);padding:20px}.stop-dialog h2{font-size:33px}.dialog-summary{font-size:16px}.dialog-navigation{gap:10px}.dialog-navigation button{padding:9px 10px;font-size:13px}}
@media(prefers-reduced-motion:reduce){.stop-link{transition:none}}
/* Small road chevrons clarify the direction at every row turn. */
.road-arrows{fill:none;stroke:#81552d;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;opacity:.85}
.journey-stop:nth-child(3n+1) .stop-sign{transform:rotate(-.8deg)}
.journey-stop:nth-child(3n+2) .stop-sign{transform:rotate(.8deg)}
.guide-middle{top:910px;left:60.5%;width:135px}
@media(max-width:1100px) and (min-width:761px){.guide-middle{left:61%;width:105px;top:925px}}
@media(max-width:760px){.guide-middle{top:calc(160px + 7 * 228px - 132px);left:auto;right:3%;width:100px}}
@media(max-width:450px){.guide-middle{top:calc(158px + 7 * 226px - 120px);left:auto;right:2%;width:80px}}

/* Five-stop visual study. Scenery, live road, signs and mascot stay separate. */
.adventure-map{height:1270px;background:#254a35;border:1px solid #b6aa66;overflow:hidden;border-radius:18px}
.landscape{background:radial-gradient(ellipse at 22% 18%,#b2c66c88,transparent 32%),radial-gradient(ellipse at 78% 38%,#125e4c,transparent 40%),radial-gradient(ellipse at 35% 79%,#469b95,transparent 35%),linear-gradient(165deg,#52683c,#244b35 40%,#073e42 70%,#34503a);opacity:1}
.landscape:after{background:url('assets/parchment-texture.webp') center/600px;mix-blend-mode:soft-light;opacity:.35}
.map-grain{background:radial-gradient(ellipse at 44% 63%,#249fb955,transparent 32%)}
.scene{position:absolute;z-index:0;pointer-events:none}.scene img{width:100%;height:100%;object-fit:contain;display:block;filter:drop-shadow(0 14px 10px #051d1d44)}
.scene-school{left:1%;top:165px;width:32%;height:310px;transform:rotate(-3deg)}
.scene-cottage{left:33%;top:30px;width:32%;height:370px}
.scene-workshop{right:1%;top:295px;width:33%;height:360px}
.scene-market{left:39%;top:650px;width:39%;height:355px;transform:rotate(2deg)}
.scene-station{left:0;top:850px;width:41%;height:340px}
.journey-stop{width:230px;transform:none;z-index:3}.stop-01{left:6%;top:90px;transform:rotate(-3deg)}.stop-02{left:40%;top:55px;transform:rotate(2deg)}.stop-03{left:73%;top:245px;transform:rotate(-2deg);width:245px}.stop-04{left:48%;top:675px;transform:rotate(3deg)}.stop-05{left:8%;top:855px;transform:rotate(-2deg)}
.stop-link{gap:0;align-items:flex-start;display:block}.stop-pin{position:absolute;left:-20px;top:-20px;z-index:2;width:54px;height:54px;font-family:'Source Sans 3',sans-serif;background:radial-gradient(circle at 35% 20%,#f09745,#b73f27);box-shadow:0 0 0 3px #6a3b22,0 5px 8px #0006}
.stop-sign{padding:20px 18px 16px 33px;min-height:125px;box-shadow:2px 5px 0 #794b28,0 9px 12px #05272166;border-radius:26px 12px 28px 8px;background:linear-gradient(110deg,#fff0c3ed,#dcb478dd),url('assets/parchment-texture.webp') center/cover;text-align:left;border:2px solid #edc98c}
.stop-sign:before{display:none}.stop-sign strong{font:700 25px/1.02 'Cormorant Garamond',serif}.stop-sign small{font-size:10px;letter-spacing:.06em;margin-top:12px}.stop-02 .stop-sign{border-radius:13px 32px 14px 25px}.stop-03 .stop-sign{border-radius:8px 26px 12px 30px}.stop-04 .stop-sign{border-radius:25px 13px 29px 11px}.stop-05 .stop-sign{border-radius:12px 29px 11px 24px}
.journey-road{z-index:-1}.road-shadow{stroke:#092d2599;stroke-width:64;transform:translateY(7px)}.road-edge{stroke:#736349;stroke-width:56}.road-surface{stroke:#c9ae79;stroke-width:49}.road-stitch{stroke:#ead7a9;stroke-width:32;stroke-dasharray:2 12;opacity:.35}.road-glow{opacity:0}.road-arrows{stroke:#8f663b;opacity:.65}
.journey-start{left:2%;top:14px;transform:rotate(-5deg);background:repeating-linear-gradient(0deg,#66402a22 0 2px,transparent 3px 12px),linear-gradient(100deg,#bd8646,#e4b46d);padding:8px 22px;color:#352816;border-radius:3px 16px 14px 4px;box-shadow:0 5px 0 #4d3824;gap:10px}.journey-start strong{font:700 27px 'Cormorant Garamond',serif}.journey-start .terminal-pin{width:30px;height:30px;font-size:20px}
.welcome-guide{position:absolute;left:29%;top:406px;width:145px;z-index:2;transform:rotate(-4deg);text-align:center}.welcome-guide img{width:100%;display:block}.welcome-guide span{display:block;background:repeating-linear-gradient(0deg,#452c2022 0 2px,transparent 3px 9px),linear-gradient(#bd864d,#e6be7b);border:3px solid #684626;border-radius:0 0 7px 6px;color:#392714;font:700 24px 'Cormorant Garamond',serif;padding:9px;margin-top:-6px;box-shadow:0 6px 12px #0005}
.word-tiles{position:absolute;left:18%;right:16%;top:41%;display:flex;flex-wrap:wrap;gap:8px;justify-content:center;transform:rotate(-4deg)}.word-tiles span{padding:5px 10px;background:#f5deb0;color:#392d20;box-shadow:2px 3px 0 #704b2b;border-radius:3px;font-size:16px;font-weight:700}.word-tiles span:nth-child(even){transform:rotate(7deg)}
.journey-finish{left:auto;right:4%;top:1130px;max-width:420px;padding:16px 22px;background:#062b30e8}.journey-finish strong{font-size:27px}.journey-finish .terminal-pin{width:42px;height:42px;font-size:25px}.terrain-caption{display:none}
@media(min-width:901px) and (max-width:1100px){.journey-stop{width:195px}.stop-03{left:71%;width:210px}.stop-sign strong{font-size:23px}.welcome-guide{left:30%;width:120px}.word-tiles span{font-size:13px;padding:4px 7px}}
@media(max-width:900px){.adventure-map{height:2060px}.journey-stop{width:215px;left:13%;top:100px;transform:rotate(-2deg)}.stop-02{left:45%;top:460px;transform:rotate(2deg)}.stop-03{left:12%;top:825px}.stop-04{left:44%;top:1225px;transform:rotate(2deg)}.stop-05{left:13%;top:1600px}.stop-sign{left:0!important;width:100%;min-height:120px}.stop-pin{width:49px;height:49px;left:-16px;top:-16px}.scene-school{left:7%;top:195px;width:66%;height:300px}.scene-cottage{left:27%;top:510px;width:70%;height:315px}.scene-workshop{left:5%;right:auto;top:882px;width:72%;height:350px}.scene-market{left:26%;top:1280px;width:73%;height:350px}.scene-station{left:0;top:1685px;width:85%;height:305px}.welcome-guide{left:auto;right:5%;top:292px;width:105px}.journey-start{left:4%;top:18px}.journey-finish{left:5%;right:5%;top:1940px;max-width:none;padding:12px}.journey-finish strong{font-size:23px}.word-tiles{top:43%}.word-tiles span{font-size:14px}.road-surface{stroke-width:37px}.road-edge{stroke-width:44px}.road-shadow{stroke-width:49px}.road-stitch{stroke-width:25px}}
@media(max-width:450px){.journey-stop{width:200px}.stop-02,.stop-04{left:35%}.scene-cottage{left:20%;width:80%}.scene-market{left:18%;width:85%}.scene-workshop{width:85%}.scene-school{width:78%}.welcome-guide{right:2%;width:83px;top:328px}.welcome-guide span{font-size:19px}.stop-sign strong{font-size:24px}.scene-station{width:98%}.word-tiles span{font-size:13px;padding:4px 6px}.journey-finish{gap:9px}.journey-finish strong{font-size:21px}}
@media(max-width:900px){.journey-stop:nth-child(even){left:45%}.journey-stop .stop-sign,.journey-stop:nth-child(even) .stop-sign{margin-left:0}.stop-pin{transform:none}.landscape{opacity:1}.landscape:after{background:url('assets/parchment-texture.webp') center/600px}.map-grain{background:radial-gradient(ellipse at 44% 63%,#249fb955,transparent 32%)}}
@media(max-width:450px){.journey-stop:nth-child(even){left:35%}}
.landscape{background:linear-gradient(135deg,#124a3544,#073e4155),none center/650px repeat}
.map-grain{background:radial-gradient(ellipse at 35% 78%,#047d9cb0,transparent 45%),linear-gradient(180deg,#063f2211,#063e3f33)}


/* User-supplied scenery is preserved byte for byte. */
.landscape{background:url('assets/residency/Sunlit Czech Countryside Footpaths-18.webp') center top/100% 100% no-repeat}
.landscape:after{background:linear-gradient(180deg,#123b3011,#123b3022);mix-blend-mode:normal;opacity:1}
.map-grain{display:none}
.scene img{filter:drop-shadow(0 9px 8px #07312733)}
.stop-sign{min-height:138px;background:linear-gradient(100deg,#fff1ccee,#edcf9ced),url('assets/parchment-texture.webp') center/cover}
.stop-sign strong{font-size:27px;text-transform:none}.stop-sign>span{font-size:16px;color:#372e20;line-height:1.24}
.stop-03 .stop-sign strong{font-size:25px}.scene-school{top:175px;width:35%;left:0}.scene-cottage{top:85px;left:31%;width:37%}.scene-workshop{top:390px;right:-1%;width:37%;height:330px}.scene-market{top:735px;left:40%;width:40%}.scene-station{top:925px;left:0;width:43%}
.road-edge,.road-glow{display:none}.road-surface{stroke:#795b33;stroke-width:7px;opacity:.6}.road-stitch{stroke:#ffe7a3;stroke-width:3px;stroke-dasharray:3 10;opacity:.95}.road-shadow{stroke:#24432e55;stroke-width:10px}.road-arrows{stroke:#ffebb9}
@media(max-width:900px){.landscape{background-image:url('assets/residency/Sunlit Czech Countryside Footpaths-tablet-18.webp');background-size:100% auto}.scene-school{top:210px;left:3%;width:79%;height:280px}.scene-cottage{top:570px;left:20%;width:80%;height:270px}.scene-workshop{top:940px;left:0;right:auto;width:88%;height:295px}.scene-market{top:1350px;left:15%;width:85%;height:295px}.scene-station{top:1715px;left:0;width:98%;height:275px}.stop-sign strong{font-size:26px}.stop-03 .stop-sign strong{font-size:24px}.stop-sign>span{font-size:15px}.stop-sign small{font-size:9px;margin-top:8px}.stop-sign{padding:16px 15px 13px 29px;min-height:138px}}
@media(max-width:450px){.landscape{background-image:url('assets/residency/Sunlit Czech Countryside Footpaths-phone-18.webp')}.scene-school{width:95%;left:0}.scene-cottage{left:4%;width:96%}.scene-market{left:0;width:100%}.scene-workshop{width:100%}.stop-sign>span{font-size:14px}.stop-sign strong{font-size:25px}.stop-03 .stop-sign strong{font-size:23px}}
.landscape{background-size:cover;background-repeat:no-repeat;background-position:center}

/* Full fifteen-stop journey; preserves the approved signs and supplied scenes. */
.adventure-map{height:3740px}
.landscape{background-image:url('assets/residency/Sunlit Czech Countryside Footpaths-18.webp');background-size:100% auto;background-repeat:repeat-y;background-position:center top}
.landscape:after{background:linear-gradient(180deg,#0b44330a,#06494b30);opacity:1}
.start-art{position:absolute;left:0;top:0;width:330px;height:220px;object-fit:contain;pointer-events:none;z-index:1}
.journey-start{left:3%;top:35px;opacity:0;pointer-events:none}
.journey-stop:nth-child(n){left:calc(6% + var(--column)*32%);top:calc(245px + var(--row)*640px);width:230px;transform:rotate(-2deg)}
.journey-stop:nth-child(3n+2){margin-top:-20px;transform:rotate(2deg)}
.journey-stop:nth-child(3n){margin-top:70px;transform:rotate(-1deg)}
.journey-stop .stop-link{z-index:2}.journey-stop .stop-sign{margin:0;min-height:145px;text-align:left}
.journey-stop .stop-sign strong{font-size:27px}.journey-stop .stop-sign>span{font-size:16px}
.stop-scenery{position:absolute;left:-70px;top:155px;width:395px;height:265px;pointer-events:none;z-index:0}
.stop-scenery img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 9px 8px #07312733)}
.stop-03 .stop-sign strong,.stop-15 .stop-sign strong{font-size:25px}
.stop-pin{transform:none}
.finish-art{position:absolute;right:0;top:3250px;width:440px;height:300px;object-fit:contain;pointer-events:none;z-index:1}
.journey-finish{left:auto;right:4%;top:3560px;max-width:430px}
.road-surface{stroke-width:7px}.road-stitch{stroke-width:3px}.road-shadow{stroke-width:10px}.road-edge,.road-glow{display:none}
@media(min-width:901px) and (max-width:1150px){.journey-stop:nth-child(n){width:200px;left:calc(5% + var(--column)*32%)}.journey-stop .stop-sign strong{font-size:25px}.stop-scenery{left:-35px;width:300px;height:240px}.journey-stop .stop-sign>span{font-size:15px}}
@media(max-width:900px){.adventure-map{height:6690px}.landscape{background-image:url('assets/residency/Sunlit Czech Countryside Footpaths-tablet-18.webp');background-size:100% auto}.start-art{left:0;top:0;width:290px;height:190px}.journey-start{top:30px;left:5%}.journey-stop:nth-child(n){left:13%;top:calc(220px + var(--index)*405px);width:225px;margin-top:0;transform:rotate(-2deg)}.journey-stop:nth-child(even){left:45%;transform:rotate(2deg)}.journey-stop .stop-sign{min-height:145px;margin-left:0}.journey-stop .stop-sign strong{font-size:26px}.journey-stop .stop-sign>span{font-size:15px}.stop-scenery{left:-35px;top:155px;width:330px;height:245px}.finish-art{top:6320px;right:3%;width:340px;height:230px}.journey-finish{left:5%;right:5%;top:6550px;max-width:none}.journey-finish strong{font-size:26px}}
@media(max-width:450px){.adventure-map{height:6700px}.landscape{background-image:url('assets/residency/Sunlit Czech Countryside Footpaths-phone-18.webp')}.journey-stop:nth-child(n){width:200px;left:12%}.journey-stop:nth-child(even){left:35%}.journey-stop .stop-sign strong{font-size:25px}.journey-stop .stop-sign>span{font-size:14px}.stop-scenery{left:-30px;width:270px;height:235px}.journey-stop:nth-child(even) .stop-scenery{left:-70px}.start-art{width:245px;height:170px}.finish-art{right:0;width:290px;height:230px}.journey-finish{top:6550px}.journey-finish strong{font-size:24px}}

/* Seamless tablet background supplied by the user. */
@media (min-width:451px) and (max-width:900px){.landscape{background-image:url('assets/residency/background-tablet-loop.webp');background-size:100% auto;background-repeat:repeat-y;background-position:center top}}

/* Looping backgrounds: native proportions, vertical repetition. */
.landscape{background-image:url('assets/residency/background-pc-loop.webp');background-size:100% auto;background-repeat:repeat-y;background-position:center top}
@media(max-width:900px){.landscape{background-image:url('assets/residency/background-tablet-loop.webp')}}
@media(max-width:450px){.landscape{background-image:url('assets/residency/background-phone-loop.webp')}}

/* Desktop markers follow the actual bends of the vertically tiled PC artwork. */
@media(min-width:901px){
  .adventure-map{height:calc((100vw - 8vw - 2px)*2.96 + 320px)}
  .journey-stop:nth-child(n){left:var(--desktop-x);top:var(--desktop-y);margin-top:0;width:230px;transform:rotate(var(--desktop-tilt,-2deg))}
  .journey-stop .stop-sign{min-height:145px}
  .stop-scenery{left:-45px;top:145px;width:330px;height:220px}
  .journey-stop.route-right .stop-scenery{left:-105px}
  .journey-stop.route-right .stop-sign{margin-left:-65px}
  .journey-stop.route-left .stop-sign{margin-left:18px}
  .finish-art{top:calc(100% - 400px);right:3%;width:390px;height:260px}
  .journey-finish{top:calc(100% - 135px);right:4%}
  .start-art{left:2%;top:0;width:265px;height:175px}
}
@media(min-width:901px) and (max-width:1150px){
  .journey-stop:nth-child(n){width:200px}
  .stop-scenery{width:270px;height:180px;left:-35px;top:150px}
  .journey-stop.route-right .stop-scenery{left:-100px}
}
