:root{--paper:#F5FBFF;--blue:#194DC7;--ink:#132B46;--coral:#ED725D;--mint:#BCE6D6;--lilac:#E8E1FF;--line:#CDDBE5;--soft:#E7F1F7;--body:Arial,"PingFang SC","Microsoft YaHei",sans-serif;--display:"Gill Sans","Trebuchet MS","PingFang SC",sans-serif;--mono:"SFMono-Regular",Consolas,monospace}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);line-height:1.7}button,input{font:inherit}button,a,input,summary{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a{color:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--coral);outline-offset:5px}button{border:0;background:none;color:inherit}.skip{position:absolute;left:16px;top:-90px;z-index:10;background:#fff;padding:10px}.skip:focus{top:16px}[hidden]{display:none!important}.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}.top{max-width:1280px;margin:auto;padding:25px 40px;display:flex;justify-content:space-between;align-items:center}.brand{text-decoration:none;display:flex;align-items:center;gap:12px;line-height:1.3}.brand-mark{font-size:42px;line-height:1;color:var(--blue)}.brand b{font-size:16px;letter-spacing:.06em}.brand small{display:block;font:9px var(--mono);letter-spacing:.2em;margin-top:5px}.nav{display:flex;align-items:center;gap:26px;font-size:13px}.nav a{text-decoration:none}.nav button{border:1px solid var(--line);padding:7px 13px;border-radius:22px;background:white;font-family:var(--mono)}main{max-width:1200px;margin:auto;padding:0 40px}.intro{display:grid;grid-template-columns:1.05fr 1fr;gap:30px;align-items:center;padding:45px 0 76px}.eyebrow{font:11px var(--mono);letter-spacing:.15em;text-transform:uppercase;color:var(--blue);margin:0 0 20px}.intro h1{font-family:var(--display);font-weight:800;font-size:clamp(38px,4.4vw,65px);line-height:1.24;letter-spacing:-.035em;margin:0 0 24px}.intro h1 em{font-style:normal;color:var(--blue);position:relative}.intro h1 em:after{content:"";position:absolute;height:9px;bottom:0;left:0;right:0;background:var(--mint);z-index:-1;transform:rotate(-1deg)}.lead{font-size:17px;max-width:450px;line-height:1.9;margin:0 0 24px;color:#425E76}.fiction-label{font-size:12px;color:#52697D;display:flex;gap:8px;align-items:center}.fiction-label>span:first-child{font-size:18px;color:var(--blue)}.map-card{position:relative;align-self:center;background:#EAF3FA;border:1px solid #D7E4EF;border-radius:27px 27px 80px 27px;min-height:395px;transform:rotate(2deg);margin:0 0 38px 8px;box-shadow:0 20px 55px #274B6C0D}.map-top{display:flex;justify-content:space-between;padding:25px 27px 0;font:10px var(--mono);letter-spacing:.08em;color:#436584}.map-compass{font-size:17px}.city-map{display:block;width:100%;margin-top:7px;border-radius:0 0 80px 27px}.floating-ticket{position:absolute;bottom:-48px;left:36px;width:274px;background:white;border-radius:13px;padding:23px 26px;box-shadow:0 12px 35px #132B4620;transform:rotate(-6deg);font-size:11px}.floating-ticket strong{display:flex;justify-content:space-between;gap:24px;font:800 37px var(--display);letter-spacing:-.04em;margin:10px 0;color:var(--blue)}.floating-ticket i{font-style:normal;color:var(--coral)}#preview-city{font:11px var(--mono)}.perforation{border-top:2px dashed #C7D6E1;margin:19px -26px 13px;position:relative}.perforation:before,.perforation:after{content:"";position:absolute;top:-8px;background:var(--paper);width:14px;height:14px;border-radius:50%}.perforation:before{left:-7px}.perforation:after{right:-7px}.floating-ticket small{color:#5E7485;font-size:10px}.departure{border-top:1px solid var(--line);padding:38px 0 52px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:24px}.section-heading .eyebrow{margin-bottom:12px}h2{font:700 29px/1.4 var(--display);letter-spacing:-.02em;margin:0}.section-heading>p{font-size:13px;line-height:1.8;color:#5A7185;margin:0}.country-field{border:0;margin:28px 0;padding:0}.countries{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.country-card{position:relative;background:#fff;border:1.5px solid var(--line);border-radius:16px;text-align:left;padding:23px 20px;min-height:158px;transition:transform .18s,border-color .18s}.country-card:hover{transform:translateY(-3px);border-color:var(--blue)}.country-card[aria-pressed=true]{background:#E6EEFF;border-color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue)}.country-card[aria-pressed=true]:after{content:"✓";position:absolute;right:17px;top:14px;font-size:17px;color:var(--blue)}.country-card .city-code{font:700 32px var(--display);color:var(--country);letter-spacing:-.025em;display:block;margin-bottom:18px}.country-card .country-name{font-weight:700;display:block;font-size:15px}.country-card .city-name{font-size:12px;display:block;color:#567187;margin-top:3px}.preferences{display:grid;grid-template-columns:1.3fr 1fr;gap:30px;border-top:1px solid var(--line);padding-top:26px}.preferences fieldset{border:0;padding:0;margin:0;min-width:0}.preferences legend{font-size:13px;font-weight:600;padding:0;margin-bottom:12px}.pills{display:flex;gap:8px;flex-wrap:wrap}.pills label{cursor:pointer;position:relative}.pills input{position:absolute;opacity:0;width:1px;height:1px}.pills span{display:block;border:1px solid var(--line);border-radius:30px;padding:8px 14px;font-size:12px;background:white}.pills input:checked+span{background:var(--ink);color:white;border-color:var(--ink)}.pills input:focus-visible+span{outline:3px solid var(--coral);outline-offset:3px}.depart-actions{display:flex;align-items:center;gap:24px;margin-top:30px}.primary,.secondary{display:inline-flex;justify-content:center;align-items:center;gap:20px;border-radius:10px;padding:15px 22px;font-size:14px;font-weight:700;min-height:52px}.primary{background:var(--blue);color:white;box-shadow:0 5px 0 #11368B}.primary:hover{background:#1643B0}.secondary{background:white;border:1px solid var(--line);box-shadow:0 3px 0 #CDDBE5}.depart-actions>span{font-size:12px;color:#6B7D8C}.journey{padding:18px 0 65px;border-top:1px solid var(--line);scroll-margin-top:15px}.journey:focus{outline:none}.journey-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 28px}.journey-head .eyebrow{margin:0}.text-button{color:var(--blue);font-size:12px;padding:7px 0;text-decoration:underline;text-underline-offset:4px}.journey-grid{display:grid;grid-template-columns:250px 1fr;gap:50px}.route-panel h2{font-size:28px;margin:8px 0 26px}.route{list-style:none;padding:0;margin:0}.route li{position:relative;padding:0 0 25px 28px;font-size:12px;color:#6D8192}.route li:before{position:absolute;content:"";left:0;top:6px;width:9px;height:9px;background:var(--paper);border:2px solid #A5BCD0;border-radius:50%;z-index:1}.route li:not(:last-child):after{position:absolute;content:"";left:5px;top:16px;width:1px;height:100%;background:#BCCDDC}.route li.done:before{background:var(--blue);border-color:var(--blue)}.route li.current{font-weight:bold;color:var(--blue)}.route li.current:before{border-color:var(--blue);box-shadow:0 0 0 4px #DDE7FF}.trip-code{border-top:1px solid var(--line);margin-top:10px;padding-top:17px;display:grid;gap:8px}.trip-code small{font-size:10px;color:#687D8F}.trip-code span{font:13px var(--mono);color:var(--blue)}.chapter{background:#fff;border:1px solid var(--line);border-radius:20px;padding:36px 38px;min-height:280px;animation:arrive .35s ease-out}.chapter .chapter-age{font:11px var(--mono);color:var(--blue);letter-spacing:.1em}.chapter h3{font:700 25px/1.4 var(--display);margin:12px 0 17px}.chapter p{font-size:15px;color:#3D5870;line-height:2;margin:0 0 17px}.chapter .pref-note{font-size:13px;color:#58748A;padding:15px 0;border-top:1px solid var(--line)}.choice-list{display:grid;gap:12px;margin-top:24px}.choice{border:1px solid #B7CBE0;border-radius:10px;background:#F5FAFF;padding:17px 18px;text-align:left;display:flex;justify-content:space-between;gap:18px;font-size:14px;line-height:1.6}.choice:hover{background:#E5EDFF;border-color:var(--blue)}.choice span:last-child{color:var(--blue);font-size:21px}.fact{display:flex;gap:14px;padding:25px 2px 0}.fact-icon{font-size:23px;color:var(--blue)}.fact h3{font-size:12px;margin:0 0 7px}.fact p{font-size:12px;color:#627A8F;line-height:1.8;margin:0 0 5px}.fact a{font-size:11px;color:var(--blue);text-underline-offset:3px}.result-ticket{position:relative;border:1px solid #CAD8E4;background:white;padding:30px 32px 22px;border-radius:18px;box-shadow:0 15px 35px #13365C0A}.ticket-head{display:flex;justify-content:space-between;font:11px var(--mono);color:var(--blue);letter-spacing:.06em;border-bottom:1px solid var(--line);padding-bottom:19px;margin-bottom:23px}.ticket-head span:last-child{font-size:22px;font-weight:bold;line-height:1}.result-ticket .eyebrow{margin-bottom:12px}.result-ticket h3{font:700 31px/1.5 var(--display);letter-spacing:-.03em;margin:0 0 18px}.result-ticket p{font-size:14px;line-height:2;color:#425F78}.result-ticket .small{font-size:11px;color:#6B7D8C;margin:0}.result-ticket .perforation{margin-left:-32px;margin-right:-32px}.result-route{display:flex;gap:6px;flex-wrap:wrap;margin-top:20px}.result-route span{background:#EDF3FD;border-radius:6px;padding:4px 9px;font-size:10px;color:#375A80}.result-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:23px}.result-actions button{font-size:12px;padding:13px 17px;gap:7px}.status{font-size:12px;color:var(--blue);min-height:20px;margin:13px 0 5px}.recap{margin-top:24px;border-top:1px solid var(--line);padding-top:16px}.recap summary{font-size:12px}.recap p{font-size:13px;color:#587186;line-height:1.9}.recap h4{font-size:13px;margin-bottom:5px}#copy-fallback{margin-top:15px;font-size:12px}#share-url{width:100%;padding:10px;border:1px solid var(--line);border-radius:6px;color:var(--ink);margin-top:8px}.how{padding:50px 0 56px;border-top:1px solid var(--line)}.how h2{font-size:35px}.how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:35px}.how-icon{display:grid;place-items:center;width:47px;height:47px;border-radius:13px;background:var(--mint);font-size:25px;color:var(--ink);margin-bottom:18px}.how-grid article:nth-child(2) .how-icon{background:var(--lilac)}.how-grid article:nth-child(3) .how-icon{background:#FFE2DA}.how h3{font-size:15px;margin:0 0 10px}.how p{font-size:13px;line-height:1.9;color:#5A7287;margin:0}.faq{padding:32px 0 65px;border-top:1px solid var(--line);max-width:800px}.faq h2{font-size:24px;margin-bottom:19px}.faq details{border-bottom:1px solid var(--line);padding:17px 0}.faq summary{font-size:14px;cursor:pointer}.faq p{font-size:13px;line-height:1.9;color:#587186;margin:12px 0 3px}.noscript{background:#FFE2DA;padding:20px}footer{max-width:1200px;margin:auto;border-top:1px solid var(--line);padding:24px 40px 40px;display:flex;gap:24px;align-items:center;font-size:10px;color:#647B8E}.brand-foot{font:bold 12px var(--mono);color:var(--blue);text-decoration:none}footer nav{margin-left:auto;display:flex;gap:20px;align-items:center}footer button{font-size:10px;text-decoration:underline;padding:0}.content-page{max-width:760px;padding-top:45px;padding-bottom:70px}.content-page h1{font:700 38px/1.35 var(--display);margin-bottom:30px}.content-page h2{font-size:23px;margin:35px 0 12px}.content-page p,.content-page li{font-size:15px;color:#425F78;line-height:1.9}.content-page a{color:var(--blue);overflow-wrap:anywhere}.content-page .notice{background:#E6EEFF;border-radius:15px;padding:20px}.content-page .english{border-top:1px solid var(--line);margin-top:40px;padding-top:10px}@keyframes arrive{from{opacity:.4;transform:translateY(9px)}to{opacity:1;transform:none}}@media(min-width:1250px){.intro{padding-top:58px}.intro h1{font-size:65px}}@media(max-width:800px){.top{padding:22px 25px}main{padding:0 25px}.intro{gap:20px;padding-top:35px}.intro h1{font-size:42px}.map-card{min-height:300px}.floating-ticket{width:222px;padding:18px 21px;left:17px}.floating-ticket strong{font-size:29px}.floating-ticket .perforation{margin-left:-21px;margin-right:-21px}.section-heading>p{font-size:11px}.preferences{grid-template-columns:1fr;gap:22px}.country-card{padding:18px 14px;min-height:148px}.country-card .city-code{font-size:29px}.journey-grid{grid-template-columns:190px 1fr;gap:24px}.chapter{padding:27px}.result-ticket{padding:26px}.result-ticket .perforation{margin-left:-26px;margin-right:-26px}.result-ticket h3{font-size:27px}.how-grid{gap:25px}footer{padding:24px 25px 35px}}@media(max-width:600px){.top{padding:20px}.brand b{font-size:14px}.brand small{font-size:8px}.brand-mark{font-size:34px}.nav{gap:14px;font-size:11px}.nav button{padding:6px 10px}main{padding:0 20px}.intro{grid-template-columns:1fr;padding:28px 0 68px;gap:28px}.intro h1{font-size:46px;line-height:1.2;margin-bottom:20px}.intro h1 br:last-of-type{display:none}.eyebrow{font-size:10px}.lead{font-size:15px;max-width:360px}.intro-copy{padding-right:5px}.fiction-label{font-size:11px}.map-card{margin:0 0 20px;min-height:0;max-width:500px;width:100%}.map-top{padding:20px 20px 0}.city-map{height:245px;object-fit:cover}.floating-ticket{left:25px;bottom:-40px;width:230px;padding:18px 22px}.floating-ticket strong{font-size:31px}.departure{padding-top:29px}.section-heading{display:block}.section-heading h2{font-size:26px}.section-heading>p{margin-top:14px;font-size:12px}.section-heading>p br{display:none}.countries{grid-template-columns:1fr 1fr;gap:10px}.country-card{padding:17px 17px;min-height:143px}.country-card .city-code{margin-bottom:13px;font-size:31px}.preferences{gap:21px}.pills span{font-size:11px;padding:8px 12px}.depart-actions{align-items:flex-start;flex-direction:column;gap:16px;margin-top:27px}.depart-actions .primary{width:100%;font-size:14px}.depart-actions>span{align-self:center}.journey-head{align-items:flex-start;gap:10px}.journey-head .eyebrow{line-height:2;font-size:10px}.text-button{font-size:11px;white-space:nowrap}.journey-grid{display:block}.route-panel h2{font-size:27px;margin:10px 0 22px}.route{display:flex;margin:0 0 22px;justify-content:space-between}.route li{padding:17px 0 0;flex:1;font-size:10px}.route li:before{top:0;left:0;width:7px;height:7px}.route li:not(:last-child):after{top:4px;left:11px;width:calc(100% - 12px);height:1px}.trip-code{display:none}.chapter{padding:25px 23px;border-radius:15px}.chapter h3{font-size:23px}.chapter p{font-size:14px;line-height:2}.choice{padding:14px;font-size:13px}.fact{padding-top:23px}.fact p{font-size:11px}.result-ticket{padding:23px}.result-ticket .perforation{margin-left:-23px;margin-right:-23px}.result-ticket h3{font-size:27px}.result-ticket p{font-size:13px}.result-actions{display:grid;grid-template-columns:1fr}.how{padding-top:36px}.how h2{font-size:30px}.how-grid{grid-template-columns:1fr;gap:27px}.how-grid article{position:relative;padding-left:66px}.how-icon{position:absolute;left:0;top:0;width:44px;height:44px}.how h3{font-size:14px}.how p{font-size:12px}.faq{padding-bottom:45px}.faq summary{font-size:13px}.faq p{font-size:12px}footer{padding:23px 20px 35px;gap:14px;flex-wrap:wrap}footer>span{margin-left:auto}footer nav{margin:5px 0 0;width:100%;font-size:11px}.content-page{padding-top:25px}.content-page h1{font-size:31px}.content-page p,.content-page li{font-size:14px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
