/* Departure-board typography, long photographic cuts, and a receipt-like data desk. */
:root{--paper:#f5f5f2;--white:#fff;--ink:#101010;--muted:#616161;--line:#c8c8c3;--accent:#164bff;--peach:#ff4d18;--pale:#e7e7e3;--warn:#a52c00;--display:'Barlow Condensed',sans-serif;--radius:0px}
body{background:var(--paper)}h1,h2,h3{font-weight:700;letter-spacing:-.018em}h1{font-size:clamp(62px,8vw,118px);line-height:.9}h2{font-size:clamp(44px,4.8vw,70px);line-height:.92}h3{font-size:29px;line-height:1.02}small,.tiny{color:var(--muted)}.eyebrow{font-family:var(--body);font-size:11px;letter-spacing:.15em}.button{border-radius:0;background:var(--accent);border-color:var(--accent);min-height:56px;font-size:12px;text-transform:uppercase;letter-spacing:.06em;padding:18px 24px}.button:hover{background:#0035e9;transform:translateY(-2px)}.button.secondary{border-color:var(--ink);background:transparent}.button.secondary:hover{color:white;background:var(--ink)}.brand,.site-footer .brand{font-family:'Bricolage Grotesque',sans-serif;letter-spacing:-.05em}.site-header{background:var(--ink);color:white;min-height:88px;border-bottom:0}.brand-icon{background:var(--accent);border-radius:0}.brand-period{color:#6b8dff}.site-header nav{font-size:12px}.watch-link{border-color:#555}#saved-count{background:white;color:black}.skip-link{background:var(--accent)}
.departure-hero{position:relative;overflow:hidden;isolation:isolate;background:#111;color:white;min-height:780px}.departure-backdrop{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 62%;filter:saturate(.72);z-index:-3}.departure-hero::before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#000b 0%,#0005 55%,#000a 100%)}.departure-grain{position:absolute;inset:0;pointer-events:none;z-index:-1;background:repeating-linear-gradient(0deg,#0000 0 3px,#00000012 3px 4px);mix-blend-mode:multiply}.departure-topline{margin:0 48px;padding:24px 0;display:flex;justify-content:space-between;gap:24px;border-bottom:1px solid #ffffff5c;font:500 10px/1.3 var(--body);letter-spacing:.12em}.departure-content{display:grid;grid-template-columns:1.4fr 1fr;gap:70px;max-width:1280px;margin:auto;padding:48px 0 45px;align-items:end}.departure-copy>.eyebrow{font-size:10px;max-width:400px;color:#ddd;margin:0 0 24px}.departure-copy h1{font-family:var(--display);font-weight:700;font-size:clamp(110px,13.2vw,198px);line-height:.77;letter-spacing:-.025em;color:white;margin:0}.departure-copy h1 em{color:var(--paper);-webkit-text-stroke:1px white;color:transparent}.departure-side{max-width:360px;justify-self:end;position:relative}.passport-window{height:240px;width:210px;position:relative;clip-path:polygon(0 0,100% 0,100% 83%,79% 100%,0 100%);margin-left:auto;margin-bottom:28px;border-top:5px solid var(--accent);transform:rotate(6deg);animation:photo-arrival .8s ease-out both}.passport-window img{height:100%;width:100%;object-fit:cover;object-position:40% center;filter:saturate(1.2)}.passport-window span{position:absolute;bottom:10px;left:12px;right:20px;font:500 8px/1.4 var(--body);letter-spacing:.08em;color:white;text-shadow:0 1px 4px black}.departure-side>p{font-size:16px;line-height:1.65;margin-bottom:26px;color:#f0f0eb}.departure-cta{display:flex;align-items:center;justify-content:space-between;gap:30px;text-decoration:none;border-top:1px solid #fff9;padding-top:22px;font-size:11px;letter-spacing:.07em;font-weight:500;min-height:70px}.departure-cta b{display:grid;place-items:center;width:52px;height:52px;flex:none;background:var(--accent);color:white;border-radius:50%;font-size:31px;font-weight:400;transition:transform .2s,background .2s}.departure-cta:hover b{background:#ff4d18;transform:rotate(45deg)}.departure-footer{display:flex;align-items:center;gap:22px;padding:24px 48px;background:var(--accent);font-size:10px;letter-spacing:.08em}.route-point{display:flex;align-items:baseline;gap:16px;white-space:nowrap}.route-point b{font-family:var(--display);font-size:32px;font-weight:600;letter-spacing:.015em}.route-line{height:1px;background:#ffffff80;flex:1}.departure-note{font-size:8px;margin-left:36px;line-height:1.8;letter-spacing:.09em;color:white}
.coverage-strip{border:0;border-bottom:1px solid var(--ink);background:white}.coverage-strip>.wrap{padding-block:30px;font-size:11px}.coverage-strip strong{font:600 48px/.85 var(--display);margin-right:12px}.coverage-strip a{font-size:11px;text-transform:uppercase;letter-spacing:.04em}.section-heading{gap:80px;margin-bottom:44px}.section-heading h2{font-size:clamp(46px,5vw,72px);line-height:.92}.section-heading>p{font-size:15px;max-width:330px}.product-switch{border-top:3px solid var(--ink);padding-top:0;padding-bottom:0}.product-tab{border-radius:0;min-height:105px;border-bottom-width:5px;transition:background .2s,color .2s;color:var(--ink)}.product-tab.active{background:var(--ink);color:white;border-bottom-color:var(--accent)}.product-tab.active small{color:#bbb}.product-tab span{font-family:var(--display);font-size:29px;font-weight:600}.product-tab small{font:400 11px var(--body)}.custom-product{display:flex;flex-direction:column;justify-content:center;font-size:12px}.custom-product strong{margin-top:8px;font-size:12px;text-transform:uppercase}.table-toolbar{margin-top:34px}.table-toolbar>p{font-size:29px;font-weight:600;text-transform:uppercase}.table-toolbar label{font-size:11px}.table-toolbar select{border-radius:0}.table-scroll{border-top:1px solid var(--ink);border-bottom:0}.country-code{border:0;border-left:3px solid var(--accent);padding-left:8px;width:40px;font-size:10px;letter-spacing:.04em}.price-result strong{font-family:var(--display);font-size:30px;font-weight:600}.pin-button{border-radius:50%;border-color:#bbb}.pin-button[aria-pressed=true]{background:var(--accent);border-color:var(--accent)}tbody th>a{font-family:var(--body);font-size:14px}.quiet-button{font-size:12px}.table-note{font-size:11px;line-height:1.75}th,td{padding-block:25px}.table-toolbar>a{font-size:11px}
.how-band{position:relative;isolation:isolate;background:#101010;color:white;padding-block:90px;overflow:hidden}.how-band::before{content:"";position:absolute;right:0;top:0;width:54%;height:100%;background:url('/assets/tokyo.webp') center/cover;filter:grayscale(1);opacity:.25;z-index:-2;clip-path:polygon(24% 0,100% 0,100% 100%,0 100%)}.how-band::after{content:"";position:absolute;left:48%;top:0;width:1px;height:100%;background:#fff3;transform:skewX(-12deg);z-index:-1}.how-grid{grid-template-columns:1fr 1fr;gap:140px}.how-grid h2{font-size:clamp(52px,6vw,86px);line-height:.88}.how-grid em{color:#7294ff}.how-grid .button.light{border:1px solid #fff8;background:transparent;color:white}.how-grid .button.light:hover{background:white;color:black}.how-grid li{border-color:#fff5;padding-block:27px}.how-grid li>span{font:600 42px/.9 var(--display);color:#8ca7ff;min-width:40px}.how-grid h3{font-size:30px;font-weight:600}.how-grid li p{font-size:13px;line-height:1.75;color:#d8d8d8}.how-grid>div>p:not(.eyebrow){color:#ccc;line-height:1.8;font-size:15px}
.destination-grid{display:grid;grid-template-columns:1.25fr 1fr;grid-template-rows:1fr 1fr;gap:0 48px;align-items:stretch}.destination{position:relative;padding-bottom:32px;border-bottom:1px solid var(--ink)}.destination:first-child{grid-row:span 2;padding-bottom:0;border-bottom:0;margin-right:10px}.destination-photo{background:var(--ink)}.destination-photo img{width:100%;height:230px;object-fit:cover;filter:saturate(.8)}.destination:first-child .destination-photo img{height:670px;object-position:center}.destination:nth-child(3){padding-top:30px}.destination-photo span{left:0;top:0;background:var(--accent);color:white;padding:12px 15px;font-size:11px}.destination h3{font-size:36px;margin-top:10px;line-height:.95;font-weight:600}.destination:first-child h3{font-size:54px}.destination p{font-size:10px;text-transform:uppercase;letter-spacing:.06em;margin-top:18px}.destination:first-child .destination-photo{clip-path:polygon(0 0,100% 0,100% 92%,88% 100%,0 100%)}.destination:hover img{transform:scale(1.025);filter:saturate(1.2)}.destination h3>svg{width:30px;height:30px}.offline-banner{background:transparent;border-top:3px solid var(--ink);padding-block:70px 90px;grid-template-columns:1.15fr 1fr;gap:95px}.offline-photo{background:#fff;padding:30px 25px 22px;clip-path:polygon(0 0,100% 0,100% 84%,84% 100%,0 100%);position:relative}.offline-photo::after{content:"NO SIGNAL / NO PROBLEM";position:absolute;left:10px;top:20px;writing-mode:vertical-rl;transform:rotate(180deg);font:500 8px var(--body);letter-spacing:.15em}.offline-photo img{height:365px;object-fit:cover;object-position:center;mix-blend-mode:multiply}.offline-photo small{font-size:9px;padding-top:12px}.offline-banner h2{font-size:clamp(48px,5.7vw,78px)}.offline-banner em{color:var(--accent)}.offline-banner p{font-size:15px}.offline-banner a{font-size:11px;text-transform:uppercase;letter-spacing:.06em}
.toolkit-feature{padding-block:60px 90px;display:grid;grid-template-columns:1fr 1.2fr;gap:90px;align-items:center;border-top:1px solid var(--ink)}.toolkit-cover{position:relative;transform:rotate(-4deg);background:#101010;box-shadow:15px 18px 0 #164bff;max-width:510px;margin:20px}.toolkit-cover img{width:100%;height:100%;object-fit:cover}.toolkit-feature h2{font-size:clamp(48px,5.5vw,76px)}.toolkit-feature p{font-size:16px}.toolkit-feature .tiny{font-size:12px}.toolkit-feature small{margin-top:18px;font-size:10px;text-transform:uppercase;letter-spacing:.06em}.site-footer{background:var(--ink);color:#fff;border-top:0}.site-footer>small,.footer-disclaimer,.site-footer small{color:#adadad}.site-footer nav{font-size:12px}.site-footer .brand{font-size:34px}
.page-intro{padding-block:68px 60px;border-bottom:1px solid var(--ink)}.page-intro h1{font-size:clamp(68px,8vw,116px);max-width:1040px;line-height:.9}.page-intro h1>span{font-size:clamp(52px,5.5vw,80px);margin-top:22px}.page-intro>p:not(.eyebrow){font-size:18px}.page-intro .eyebrow{font-size:10px}.numbered-heading>span{border-radius:0;background:var(--accent)}.numbered-heading h2{font-size:32px;font-weight:600;letter-spacing:0}.form-section{border-top:1px solid var(--ink)}.notice{background:transparent;border-left:3px solid var(--accent);padding-left:20px;padding-top:4px;padding-bottom:4px}.purchase-mode label{border:1px solid var(--ink);background:transparent;border-radius:0}.purchase-mode label:has(:checked){background:var(--ink);color:white}.purchase-mode label:has(:checked) small{color:#ccc}input[type=checkbox],input[type=radio]{accent-color:var(--accent)}input:not([type=checkbox]):not([type=radio]),select,textarea{border-radius:0;border-color:#777;background:white}.result-receipt{border-top:5px solid var(--accent);box-shadow:none;background:var(--ink);color:white;padding:36px 30px 38px}.result-receipt h2{font-size:55px;line-height:.9}.result-receipt output{font-size:clamp(44px,4.3vw,64px);font-weight:600;letter-spacing:-.02em}.result-receipt small,.result-receipt dt,.result-receipt .tiny,.result-receipt p{color:#ccc}.result-receipt .eyebrow{color:#9db2ff}.result-receipt .result-state{color:#b8c7ff;border-color:#666}.result-receipt .button.secondary{color:white;border-color:#666}.result-receipt .button.secondary:hover{background:var(--accent);border-color:var(--accent)}.result-receipt dl div{border-color:#555}.result-receipt .text-link{font-size:12px}.result-receipt .button-stack{border-color:#666}.calculator-layout,.basket-layout{padding-top:44px}.country-intro{border-bottom:0}.country-intro img{border-radius:0;clip-path:polygon(0 0,100% 0,100% 85%,83% 100%,0 100%);height:470px}.country-intro h1{font-size:clamp(65px,7vw,100px)}.country-intro .button{font-size:11px}.split-section{border-top:1px solid var(--ink)}.split-section h2{font-size:58px}.prose{font-size:17px}.prose h2{font-size:40px;font-weight:600;line-height:1.05}.prose h3{font-size:31px;font-weight:600}.reading{padding-top:50px}.guide-list>a{border-color:var(--ink)}.guide-list h2{font-size:40px;font-weight:600}.guide-list .country-code{border:0;border-left:3px solid var(--accent)}.guide-list p{font-size:14px}.source-list a{font-size:14px}.saved-item{border-color:var(--ink)}.saved-item h2{font-size:35px}.saved-item .saved-total{font:600 35px var(--display)}.basket-line h3{font-size:30px;font-weight:600}.basket-line strong{font:600 32px var(--display)}dialog{border-radius:0;border-top-color:var(--accent)}dialog h2{font-size:46px;line-height:.95}.toast{border-radius:0;background:var(--accent)}
@keyframes photo-arrival{from{opacity:0;transform:translateY(25px) rotate(2deg)}to{opacity:1;transform:translateY(0) rotate(6deg)}}
@media(min-width:1500px){.departure-content{padding-block:65px 60px}.departure-hero{min-height:870px}.departure-copy h1{font-size:215px}}
@media(max-width:1350px){.departure-content{margin-inline:48px}.departure-copy h1{font-size:clamp(110px,13.9vw,185px)}.departure-content{gap:50px}.departure-note{margin-left:15px}.how-grid{gap:90px}}
@media(max-width:1050px){.departure-hero{min-height:730px}.departure-content{margin-inline:32px;gap:40px;padding-top:55px}.departure-copy h1{font-size:150px}.departure-topline{margin-inline:32px}.departure-topline span:nth-child(2){display:none}.departure-footer{padding-inline:32px;gap:15px}.departure-note{display:none}.passport-window{height:200px;width:160px}.departure-side>p{font-size:14px}.departure-cta{font-size:10px}.how-grid{gap:65px}.destination-grid{gap:0 30px}.destination:first-child .destination-photo img{height:650px}.toolkit-feature{gap:60px}.offline-banner{gap:50px}.result-receipt output{font-size:46px}}
@media(max-width:720px){.site-header{padding:20px 20px 10px}.site-header nav{font-size:11px}.site-header nav a{min-height:44px}.departure-hero{min-height:0}.departure-topline{margin-inline:20px;padding-block:18px;font-size:8px;gap:15px}.departure-topline span:last-child{font-size:7px;white-space:nowrap}.departure-backdrop{object-position:44% 32%;height:640px;filter:saturate(.6)}.departure-hero::before{background:linear-gradient(180deg,#0005 0%,#0007 50%,#101010 75%)}.departure-content{margin-inline:20px;display:block;padding:32px 0 34px}.departure-copy>.eyebrow{font-size:8px;margin-bottom:30px;max-width:250px}.departure-copy h1{font-size:clamp(115px,28.8vw,185px);line-height:.78;letter-spacing:-.02em}.departure-side{max-width:none;margin-top:36px;display:grid;grid-template-columns:1fr 1.4fr;gap:20px 25px;align-items:center}.passport-window{width:100%;height:180px;margin:0;transform:rotate(4deg)}.passport-window span{font-size:6px;left:9px}.departure-side>p{font-size:13px;line-height:1.7;margin:0}.departure-cta{grid-column:span 2;padding-top:20px;min-height:73px;gap:20px;font-size:10px}.departure-cta b{width:48px;height:48px;font-size:28px}.departure-footer{padding:20px;gap:10px}.route-point{display:block;font-size:7px}.route-point b{display:block;font-size:21px;margin-top:5px}.route-line{margin-top:15px}.coverage-strip>.wrap{padding-block:24px;gap:24px 18px;grid-template-columns:1fr 1fr}.coverage-strip strong{display:block;font-size:46px;margin:0 0 10px}.coverage-strip a{font-size:9px;display:block;line-height:1.7;max-width:130px}.coverage-strip a svg{margin-left:8px}.section-heading h2{font-size:50px}.section-heading>p{font-size:14px;margin-top:24px}.product-tab{min-height:90px;padding:13px 10px;gap:10px}.product-tab>svg{width:25px;height:25px}.product-tab span{font-size:23px}.product-tab small{font-size:9px}.custom-product{display:block;font-size:10px;margin-top:16px;padding:0 0 16px;min-height:44px}.custom-product strong{font-size:10px;margin-left:12px}.table-toolbar>p{font-size:26px}.table-toolbar>p span{font-size:9px}.table-toolbar>a{font-size:10px}.table-toolbar label{font-size:10px}.how-band{padding-block:60px}.how-grid{gap:48px}.how-grid h2{font-size:66px}.how-grid li{gap:24px}.how-grid h3{font-size:31px}.how-grid li>span{font-size:44px;min-width:37px}.how-grid li p{font-size:13px}.how-band::before{width:100%;height:100%;opacity:.2;clip-path:polygon(55% 0,100% 0,100% 100%,0 100%)}.how-band::after{display:none}.destination-grid{display:block}.destination{border-bottom:1px solid var(--ink);padding-bottom:30px;margin-bottom:30px}.destination:first-child{margin-right:0;border-bottom:1px solid var(--ink);padding-bottom:30px}.destination-photo img{height:255px}.destination:first-child .destination-photo img{height:460px}.destination:nth-child(3){padding-top:0;margin-bottom:0}.destination h3,.destination:first-child h3{font-size:40px}.destination p{font-size:9px}.destination-photo span{font-size:10px;padding:10px 13px}.offline-banner{gap:35px;padding-block:50px 60px}.offline-banner h2{font-size:57px}.offline-photo img{height:270px}.offline-photo{padding:25px 25px 20px}.offline-banner .button{font-size:11px}.toolkit-feature{grid-template-columns:1fr;gap:45px;padding-block:42px 70px}.toolkit-cover{margin:20px 18px;box-shadow:10px 14px 0 #164bff;max-width:calc(100% - 36px)}.toolkit-feature h2{font-size:61px}.toolkit-feature p{font-size:14px}.toolkit-feature .tiny{font-size:11px}.toolkit-feature .button{width:100%;font-size:11px}.site-footer{padding-top:50px}.site-footer .brand{font-size:31px}.site-footer nav{font-size:12px}.page-intro{padding-block:45px 38px}.page-intro h1{font-size:clamp(55px,13.5vw,82px);line-height:.93}.page-intro h1>span{font-size:46px}.page-intro>p:not(.eyebrow){font-size:15px}.page-intro .button{font-size:11px}.calculator-layout,.basket-layout{padding-top:24px}.numbered-heading h2{font-size:29px;font-weight:600}.numbered-heading>span{width:28px;height:28px;font-size:9px}.result-receipt h2{font-size:54px}.result-receipt output{font-size:58px}.result-receipt .eyebrow{font-size:10px}.form-grid label{font-size:11px}.purchase-mode label{padding:15px}.country-intro h1{font-size:68px}.country-intro img{height:330px;border-radius:0}.split-section h2{font-size:55px}.guide-list h2{font-size:36px}.guide-list p{font-size:12px}.prose h2{font-size:37px}.reading{padding-top:35px}.saved-item h2{font-size:34px}.saved-item .saved-total{font-size:34px}.basket-line h3{font-size:28px}.basket-line strong{font-size:27px}.link-list>a{font-size:25px;font-weight:600}.button{min-height:54px;font-size:11px}.button-row{gap:16px}dialog h2{font-size:43px}}
@media(prefers-reduced-motion:reduce){.passport-window{animation:none!important}.departure-cta b,.destination img{transition:none!important}}
