:root{color-scheme:dark;--bg:#151315;--panel:#211e20;--dark:#100e10;--gold:#f4bd61;--text:#dfdbdc;--muted:#a99d8d;--page:1280px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:#fff;color:var(--text);font-family:"Yu Gothic", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:5px}figure,p,h1,h2,h3,dl,dd{margin:0}a:hover{color:var(--gold)}.site-shell{width:var(--page);margin:140px auto 126px;background:var(--bg);box-shadow:0 -3px 18px #0002}.header{height:96px;padding:0 64px;display:flex;align-items:center;gap:25px;background:#171416}.brand{display:flex;align-items:center;gap:20px;white-space:nowrap}.brand strong,.footer-brand strong{font-family:Georgia,serif;font-size:25px;letter-spacing:2px;color:var(--gold)}.brand span{border-left:1px solid #484039;padding-left:20px;font-size:12px;letter-spacing:2px;color:#d0bdab}.header nav{display:flex;gap:29px;margin-left:auto;font-size:11px;font-weight:600;letter-spacing:1px;white-space:nowrap}.gold-button{background:#d7a347;color:#211a10;border:0;text-align:center;letter-spacing:1px}.gold-button:hover{background:var(--gold);color:#211a10}.book{padding:11px 20px;font-size:11px;white-space:nowrap}.profile{display:flex;align-items:center;justify-content:center;background:var(--gold);border-radius:11px;width:32px;height:32px;flex:none}.profile svg{width:20px;fill:none;stroke:#59401d;stroke-width:1.8}.hero{position:relative;margin:0 32px;overflow:hidden;aspect-ratio:1672/941;background:var(--dark)}.hero-image{width:100%;height:100%;display:block;object-fit:contain;transform-origin:50% 50%;will-change:transform}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 58%,#100d1099 74%,#100d10db),linear-gradient(0deg,#151315c9,transparent 48%);pointer-events:none}.edition{position:absolute;z-index:1;top:35px;left:36px;color:var(--gold);font-size:11px;letter-spacing:2px;background:#21170ed9;padding:9px 16px}.hero-copy{position:absolute;z-index:1;right:36px;top:95px;width:300px}.hero h1{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;color:#c8a340;font-size:64px;line-height:1.15;letter-spacing:-3px;font-weight:500;transform:rotate(-5deg)}.hero-copy p{font-family:"Yu Mincho",serif;color:#ddd2c3;font-size:16px;line-height:1.9;margin:37px 0 30px}.hero-model{color:var(--gold);font-size:10px;letter-spacing:1.5px;display:flex;justify-content:space-between}.hero-model span{color:var(--muted)}.scene-bar{display:flex;align-items:center;gap:28px;padding:22px 64px 18px;font-size:10px;line-height:1.3;letter-spacing:1px;color:var(--muted)}.scene-bar small{font-size:9px}.atmosphere{background:#252224;border-radius:12px;text-align:center;padding:6px 12px}.time{color:var(--gold)}.scene-bar nav{display:flex;gap:23px;margin-left:auto}.scene-bar nav a{max-width:75px;font-size:10px}.scene-bar nav a[aria-current]{color:var(--gold)}.scroll-cue{letter-spacing:2px;font-size:10px}.chapter{padding:80px 64px;position:relative;scroll-margin-top:20px}.eyebrow{display:flex;align-items:center;gap:16px;font-size:10px;letter-spacing:1px;color:var(--muted);margin-bottom:18px}.eyebrow b{font-weight:500;letter-spacing:2px;color:var(--gold)}.eyebrow i{display:block;width:40px;height:1px;background:#a47c39}h2{font-size:38px;font-weight:400;line-height:1.35;letter-spacing:.01em}.section-heading{max-width:630px}.section-heading p{font-size:16px;color:#c3b6a4;line-height:1.75;margin-top:24px}.vertical-label{position:absolute;top:86px;right:65px;writing-mode:vertical-rl;letter-spacing:8px;color:#514947;font-family:serif;font-size:22px}.perspectives{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:64px}.perspective{background:var(--panel);border-radius:3px;overflow:hidden}.sprite{background-image:url('assets/stitch-main.webp');background-repeat:no-repeat;aspect-ratio:var(--region-ratio,1.4)}.photo{position:relative}.photo span{position:absolute;top:20px;left:20px;font-size:11px;color:var(--gold);letter-spacing:1px;background:#171413de;padding:4px 8px}.card-copy{padding:22px 22px 28px}.card-copy h3{font-size:21px;font-weight:400;margin-bottom:20px;white-space:nowrap}.card-copy p{font-size:15px;line-height:1.85;color:#c5b9a8;min-height:142px}.card-meta{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;letter-spacing:1px;margin-top:25px;white-space:nowrap}.machine{background:var(--dark);padding-top:72px;padding-bottom:72px}.machine-layout{display:grid;grid-template-columns:42% 1fr;gap:48px;align-items:center;margin-top:30px}.green-pill{background:#203629;color:#adcfb4;font-size:11px;letter-spacing:.5px;border-radius:20px;padding:6px 12px}.machine h2{margin-top:22px}.machine-copy>p{font-size:15px;color:#c3b6a4;margin-top:26px;line-height:1.85}.palette{background:var(--panel);padding:24px;margin-top:30px;border-radius:3px}.palette>span{font-size:11px;color:var(--muted);letter-spacing:.7px}.palette>div{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:18px}.palette i{display:block;height:40px;border-radius:3px}.palette figcaption{font-size:10px;color:var(--muted);white-space:nowrap;margin-top:5px}.specs{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:28px}.specs>div{background:var(--panel);padding:22px 16px;border-radius:5px;min-height:148px}.specs span{font-size:11px;color:var(--muted)}.specs h3{font-family:Georgia,serif;color:var(--gold);font-size:22px;font-weight:400;margin-top:10px}.specs p{font-size:13px;color:#c2b5a4;line-height:1.9;margin-top:4px}.machine-visuals{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:center}.detail{overflow:hidden;border-radius:3px}.detail .sprite{width:100%}.detail-stack{display:grid;gap:22px}.route-heading{display:flex;align-items:end;justify-content:space-between;gap:24px}.route-tools{display:flex;align-items:center;gap:25px;font-size:11px;color:var(--muted);white-space:nowrap}.route-tools button{padding:9px 16px;border:0;background:#2c272b;color:var(--gold);font-size:11px}.route-layout{display:grid;grid-template-columns:57% 1fr;gap:32px;margin-top:56px}.map-panel{padding:16px;background:var(--panel);border-radius:3px;align-self:start}.route-map{width:100%;border-radius:2px}.route-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:26px}.route-stats div{background:#242123;padding:12px 8px;text-align:center}.route-stats dt{font-size:10px;color:var(--muted)}.route-stats dd{color:var(--gold);font-family:Georgia,serif;font-size:18px}.route-points{display:grid;gap:16px}.route-point{text-align:left;border:1px solid transparent;background:var(--panel);color:var(--text);border-radius:3px;padding:22px 18px;transition:border-color .8s,box-shadow .8s}.route-point.is-active{box-shadow:0 0 28px #d8a3420b;border-left-color:#bd913d}.point-meta{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:10px}.point-meta b{font-size:11px;color:#211a10;background:#d7a347;font-weight:500;padding:1px 6px;border-radius:2px}.point-meta i{margin-left:auto;font-style:normal;font-size:26px;line-height:1;color:#665844}.is-active .point-meta,.is-active .point-meta i{color:var(--gold)}.route-point strong{display:block;font-size:20px;font-weight:400;line-height:1.4;margin-top:9px}.point-description{display:block;font-size:14px;line-height:1.6;color:#c2b5a4;margin-top:10px}.trial{background:var(--dark);padding:74px 64px}.trial-panel{background:var(--panel);border-radius:5px;display:grid;grid-template-columns:1.4fr 1fr;gap:56px;padding:55px;align-items:center}.trial h2{font-size:34px;line-height:1.5;margin-top:26px}.trial-copy>p{font-size:14px;color:#c2b5a4;line-height:1.7;margin-top:24px}.benefits{padding:0;margin:34px 0 0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:12px 22px;font-size:12px;white-space:nowrap}.benefits li:before{content:"✓";display:inline-flex;justify-content:center;align-items:center;color:var(--gold);border:1px solid var(--gold);width:14px;height:14px;line-height:1;margin-right:8px;border-radius:50%;font-size:10px}.reservation{background:#302b2e;padding:28px;box-shadow:0 15px 25px #0005;border-radius:3px;scroll-margin-top:40px}.reservation-title{display:flex;gap:14px;align-items:center;justify-content:space-between;margin-bottom:24px}.reservation h3{font-size:18px;font-weight:400;white-space:nowrap}.reservation-title span{font-size:10px;color:#95bc9d;background:#344b38;padding:3px 8px;white-space:nowrap}.reservation fieldset{padding:0;border:0;margin:0 0 17px}.reservation legend,.field{font-size:10px;color:var(--muted);display:block}.reservation legend{margin-bottom:5px}.plan-options{display:grid;grid-template-columns:1fr 1fr;background:#252123}.plan-options label{position:relative;cursor:pointer}.plan-options input{position:absolute;opacity:0}.plan-options span{display:block;padding:8px 5px;text-align:center;font-size:11px;white-space:nowrap}.plan-options input:checked+span{background:var(--gold);color:#4b3518;box-shadow:0 0 14px #f4bd6128}.plan-options input:focus-visible+span{outline:2px solid var(--gold);outline-offset:3px}.field{margin-bottom:16px}.reservation input[type=text],.reservation input[type=date],.reservation select{width:100%;min-width:0;background:#252123;color:#dbd2ce;border:1px solid transparent;border-radius:2px;font-size:12px;padding:9px 10px}.field input{margin-top:5px;text-overflow:ellipsis}.date-time{display:grid;grid-template-columns:1fr 1fr;gap:8px}.reservation select{appearance:none}.reserve-button{width:100%;padding:13px 5px;font-size:13px}.reservation small{font-size:9px;line-height:1.8;color:var(--muted);display:block;text-align:center;margin-top:17px}.footer{background:var(--dark);padding:80px 64px 40px}.footer-columns{display:grid;grid-template-columns:repeat(4,1fr);gap:36px}.footer-brand{font-size:10px;letter-spacing:2px;color:var(--muted)}.footer-brand strong{font-size:22px;letter-spacing:1px}.footer h3{font-size:12px;letter-spacing:2px;font-weight:500;margin-bottom:14px}.footer p{color:#b6a997;font-size:13px;line-height:1.8}.footer-brand+p{margin-top:13px}.piaggio{display:block;color:var(--gold);font-size:10px;letter-spacing:1px;margin-top:26px}.footer small{display:block;font-size:10px;color:var(--muted);margin-top:18px}.phone{display:block;font-size:12px;letter-spacing:1px}.footer-bottom{display:flex;align-items:center;justify-content:space-between;font-size:9px;color:var(--muted);letter-spacing:.5px;margin-top:90px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.motion-enabled .reveal{opacity:0;transform:translateY(16px);transition:opacity 1.1s ease,transform 1.1s ease}.motion-enabled .reveal.is-visible{opacity:1;transform:none}.perspective:nth-child(2){transition-delay:.1s}.perspective:nth-child(3){transition-delay:.2s}@media(min-width:1500px){.site-shell{margin-top:140px}}@media(max-width:1400px){.site-shell{margin:32px auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.motion-enabled .reveal{opacity:1;transform:none;transition:none}.hero-image{transform:none!important;will-change:auto}.route-point{transition:none}}

/* PC route-detail layout from Experience.png. Blank map is retained pending clarification. */
.route-detail-page{background:#171416}.route-detail-top{padding:18px 32px 14px;background:#1e1b1e}.detail-title-row{display:flex;align-items:center;gap:20px}.back-link{font-size:12px;color:#baad9b;border-right:1px solid #4b403a;padding-right:20px;white-space:nowrap}.detail-title-row h1{font-size:20px;font-weight:400;line-height:1.4;letter-spacing:.5px}.detail-title-row h1 span{display:inline-block;border-radius:18px;background:#393025;color:#e2ae55;font-size:11px;padding:3px 12px;margin-left:12px;letter-spacing:2px}.detail-title-row p{font-size:11px;color:var(--muted);letter-spacing:1px}.route-tabs{display:flex;gap:7px;margin-top:18px}.route-tabs button{border:0;background:#3a3438;color:#b6a995;padding:8px 20px;font-size:12px;letter-spacing:1px;min-height:36px}.route-tabs button.selected{background:var(--gold);color:#382811;min-width:170px}.route-tabs button:nth-child(2),.route-tabs button:nth-child(3){min-width:165px}.route-tabs button:nth-child(n+4){background:#2d2627;padding-left:12px;padding-right:12px;color:var(--gold)}.route-detail-content{display:grid;grid-template-columns:440px 1fr;min-height:640px}.itinerary{position:relative;background:#221f21}.itinerary-scroll{height:640px;overflow:auto;scrollbar-width:thin;scrollbar-color:#463d32 #221f21;padding-bottom:76px}.itinerary-intro{padding:22px 20px 18px}.itinerary-intro .eyebrow{display:flex;justify-content:space-between;gap:8px;white-space:nowrap}.itinerary-intro .eyebrow b{font-size:11px;letter-spacing:1px}.itinerary-intro .eyebrow span{font-size:11px}.itinerary-name{display:flex;justify-content:space-between;gap:8px;align-items:center}.itinerary-name h2{font-size:27px;letter-spacing:0;line-height:1.35;max-width:330px}.itinerary-name>span{font-family:Georgia,serif;font-size:23px;color:var(--gold);white-space:nowrap}.itinerary-name small{color:var(--muted);font-size:10px;margin-left:4px}.itinerary-summary{display:flex;justify-content:space-between;font-size:12px;line-height:1.5;gap:20px;color:var(--muted);margin-top:6px}.itinerary-summary p{max-width:275px}.itinerary-summary>span{font-size:10px;text-align:right;min-width:85px}.riding-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:30px}.riding-stats>div{text-align:center;background:#141113;padding:9px}.riding-stats dt{font-size:11px;color:var(--muted)}.riding-stats dd{font-size:14px;letter-spacing:1px;margin-top:4px}.riding-stats>div:nth-child(2) dd{color:#92b69b}.riding-stats>div:nth-child(3) dd{color:#d38686}.itinerary-point{background:#272326;margin:16px 20px;padding:16px}.itinerary-point-meta{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:11px;color:var(--muted)}.itinerary-point-meta b{font-weight:400;color:var(--gold)}.itinerary-point-meta b span{display:inline-flex;width:25px;height:25px;align-items:center;justify-content:center;border-radius:50%;background:#51494a;color:#ded9d9;margin-right:6px}.itinerary-point h3{font-size:20px;font-weight:400;margin:10px 0}.itinerary-point>p{color:#c0b29f;font-size:14px;line-height:1.65}.riding-note{background:#1c191c;padding:10px;margin-top:20px;font-size:11px;letter-spacing:.4px}.riding-note>div{display:flex;justify-content:space-between;gap:12px}.riding-note dt{color:var(--muted)}.riding-note>div:nth-child(2) dt{color:#92b69b}.itinerary-highlight h3,.itinerary-highlight .itinerary-point-meta>span{color:var(--gold)}.itinerary-highlight .itinerary-point-meta b span{background:var(--gold);color:#49331b}.itinerary-cta{position:absolute;bottom:0;left:0;right:0;padding:16px;background:linear-gradient(#302c29dd,#242022);box-shadow:0 -12px 18px #15121555}.itinerary-cta a{display:block;background:var(--gold);font-size:14px;padding:12px 20px}.reference-map-space{background:#151315}
