/* Editorial journey pages: photographs, generous space and practical detail. */
.journey-collection{background:var(--lake);color:var(--paper)}
.collection-heading{display:grid;grid-template-columns:1.05fr .75fr;gap:12%;align-items:end;margin-bottom:64px}
.collection-heading p{color:#d5e1e0;max-width:44ch}
.destination-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:72px 32px}
.destination-card{min-width:0;grid-column:span 3}
.destination-grid>.destination-card:nth-child(n+3){grid-column:span 2}
.destination-image-link{display:block;position:relative;isolation:isolate;aspect-ratio:1.48;overflow:hidden;background:#34535b}
.destination-image{width:100%;height:100%;object-fit:cover}
.destination-card[data-route="toronto"] .destination-image{object-position:center 18%}
.destination-grid>.destination-card:nth-child(n+3) .destination-image-link{aspect-ratio:1.12}
.destination-grid>.destination-card:nth-child(3) .destination-image{object-position:center 48%}
.destination-location{position:absolute;bottom:22px;left:22px;right:70px;padding:13px 18px;width:fit-content;max-width:calc(100% - 92px);font-size:13px;line-height:1.5}
.image-link-arrow{position:absolute;right:20px;bottom:21px;display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:rgba(15,40,46,.7);color:var(--paper);border:1px solid rgba(255,255,255,.35);transition:transform .25s var(--ease)}
.destination-image-link:hover .image-link-arrow{transform:translateX(3px)}
.destination-copy{padding-top:24px}
.route-duration{font-size:13px;line-height:1.5;color:#bfd2d0;margin-bottom:12px;letter-spacing:.015em}
.destination-copy h3{font-size:clamp(24px,2.4vw,33px);line-height:1.25;letter-spacing:-.03em;margin-bottom:16px}
.destination-copy h3 a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}
.destination-description{font-size:15px;line-height:1.8;color:#d5e1e0;max-width:53ch}
.destination-copy .journey-link{border-bottom:1px solid rgba(235,243,240,.26);margin-top:18px;padding:14px 0;font-size:14px}
.destination-grid>.destination-card:nth-child(n+3) h3{font-size:25px}
.collection-note{font-size:13px;color:#c1d3d1;margin-top:52px;max-width:88ch;line-height:1.8}
.journal{background:var(--silver-soft)}
.journal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:56px}
.journal-image{display:block;aspect-ratio:1.45;overflow:hidden;background:var(--silver)}
.journal-image img{width:100%;height:100%;object-fit:cover}
.journal-meta{display:flex;align-items:center;justify-content:space-between;gap:14px;color:var(--muted);font-size:13px;margin:22px 0 13px}
.journal-card h3{font-size:25px;line-height:1.4;letter-spacing:-.025em}
.journal-card h3 a:hover{text-decoration:underline;text-decoration-thickness:1px}
.journal-description{font-size:15px;line-height:1.8;color:var(--muted);margin-top:16px}
.journal-card .text-link{font-size:14px;margin-top:16px}
.route-hero{position:relative;isolation:isolate;min-height:700px;height:88svh;max-height:940px;background:var(--lake);color:var(--paper);display:flex;align-items:flex-end;overflow:hidden;padding:160px var(--gutter) 55px}
.route-hero-image{position:absolute;inset:0;z-index:-3;width:100%;height:100%;object-fit:cover}
.route-page[data-route="toronto"] .route-hero-image{object-position:center 15%}
.route-hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(180deg,rgba(5,23,28,.42),transparent 35%,rgba(5,23,28,.18) 50%,rgba(5,23,28,.7))}
.route-breadcrumb{position:absolute;top:136px;left:var(--gutter);display:flex;gap:14px;align-items:center;font-size:13px;text-shadow:0 1px 8px rgba(0,0,0,.5)}
.route-breadcrumb a{min-height:44px;display:flex;align-items:center}
.route-breadcrumb a:hover{text-decoration:underline}
.route-hero-content{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.65fr);align-items:end;gap:9%;width:100%}
.route-hero-place{font-size:14px;margin-bottom:22px;color:#e1ebe7}
.route-hero h1{font-size:clamp(54px,5.9vw,84px);line-height:1.06;max-width:14ch;letter-spacing:-.045em;text-wrap:balance}
.trip-brief{position:relative;padding:28px;max-width:400px;width:100%;justify-self:end}
.trip-brief dl{margin:0;display:grid;gap:20px}
.trip-brief dt{font-size:12px;color:#405b60;margin-bottom:6px}
.trip-brief dd{font-size:17px;margin:0;font-weight:500;line-height:1.5}
.trip-brief .button{margin-top:25px;width:100%;font-size:14px;gap:14px;padding:14px 18px}
.trip-brief .button svg{width:18px;height:18px}
.route-section-nav{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:12px var(--gutter);border-bottom:1px solid #d5dfdc;background:var(--paper);font-size:14px}
.route-section-nav>div{display:flex;gap:36px;align-items:center;flex-wrap:wrap}
.route-section-nav a{display:flex;gap:18px;align-items:center;min-height:44px}
.route-section-nav>div a:hover{text-decoration:underline}
.route-section-nav .text-link{font-size:13px}
.route-section-nav .text-link svg{width:18px;height:18px}
.route-overview{display:grid;grid-template-columns:.8fr 1.2fr;gap:12%;padding-top:100px;padding-bottom:100px}
.route-lead{font-size:22px;line-height:1.7;max-width:47ch}
.best-for{margin-top:30px;padding-top:24px;border-top:1px solid #d8e1de}
.best-for h3{font-size:14px;font-weight:600;letter-spacing:0;margin-bottom:10px}
.best-for p{font-size:15px;line-height:1.7;color:var(--muted)}
.route-itinerary{background:var(--silver-soft);display:grid;grid-template-columns:.85fr 1.15fr;gap:13%}
.itinerary-intro{position:sticky;top:138px;align-self:start}
.itinerary-intro>p{font-size:16px;color:var(--muted);margin:28px 0 16px;max-width:36ch}
.itinerary-intro .text-link{font-size:15px}
.itinerary-stops{padding:0;margin:0;list-style:none}
.itinerary-stops li{display:grid;grid-template-columns:40px 1fr;gap:24px;position:relative;padding:0 0 44px}
.itinerary-stops li:last-child{padding-bottom:0}
.itinerary-stops li:not(:last-child)::after{content:'';position:absolute;left:18px;top:44px;bottom:8px;width:1px;background:#cbd9d5}
.stop-number{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid #aec2bd;border-radius:50%;font-size:12px;line-height:1;color:#3b5e62;margin-top:1px}
.itinerary-stops h3{font-size:23px;margin:2px 0 14px}
.itinerary-stops p{font-size:16px;color:var(--muted);line-height:1.85;max-width:52ch}
.route-interlude{position:relative;margin:0;height:560px;overflow:hidden;background:var(--silver)}
.route-interlude img{height:100%;width:100%;object-fit:cover}
.route-interlude figcaption{position:absolute;bottom:40px;left:var(--gutter);padding:22px 28px;font-size:17px;max-width:460px}
.experience-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px;margin-top:62px}
.experience-list article{border-top:1px solid #bed0cb;padding-top:26px}
.experience-list h3{font-size:25px;line-height:1.4;margin-bottom:18px}
.experience-list p{font-size:16px;color:var(--muted);line-height:1.85}
.route-planning{display:grid;grid-template-columns:.9fr 1.1fr;gap:12%;background:var(--silver-soft)}
.planning-heading h2{max-width:12ch}
.vehicle-assurance{margin-top:48px;max-width:37ch}
.vehicle-assurance h3{font-size:20px;margin-bottom:16px}
.vehicle-assurance p{font-size:15px;color:var(--muted)}
.vehicle-assurance .text-link{font-size:14px;margin-top:18px}
.planning-copy>article{margin-bottom:32px}
.planning-copy h3{font-size:21px;margin-bottom:12px}
.planning-copy p{font-size:15px;color:var(--muted);line-height:1.85}
.planning-copy .quote-clarity{padding-top:28px;border-top:1px solid #c7d7d2}
.destination-sources{border-top:1px solid #c8d8d3;border-bottom:1px solid #c8d8d3;margin-top:32px;font-size:14px}
.destination-sources summary{display:flex;justify-content:space-between;gap:24px;align-items:center;min-height:60px;padding:16px 0;cursor:pointer;list-style:none;font-weight:500}
.destination-sources summary::-webkit-details-marker{display:none}
.destination-sources summary svg{width:19px;height:19px}
.destination-sources>p{font-size:14px;line-height:1.7}
.destination-sources ul{padding:0;list-style:none;margin:12px 0 20px}
.destination-sources li a{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:44px;padding:7px 0;text-decoration:underline;font-size:13px}
.destination-sources li svg{width:16px;height:16px;rotate:-35deg}
.image-disclosure{font-size:12px!important;color:var(--muted);margin-top:24px;line-height:1.8!important}
.journey-cta{display:flex;align-items:center;justify-content:space-between;gap:64px;background:var(--lake);color:var(--paper)}
.journey-cta p{color:#cfddda;margin-top:26px;font-size:17px;max-width:47ch}
.journey-cta .button{flex-shrink:0;gap:28px}
.related-journeys h2{margin-bottom:48px}
.related-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}
.related-journeys .destination-card{grid-column:auto}
.destination-compact .route-duration{color:var(--muted)}
.destination-compact .journey-link{border-color:#c9d7d3}
.destination-compact .destination-image-link{aspect-ratio:1.8}
.related-journeys>.text-link{margin-top:38px}
.guide-heading{padding-top:64px;padding-bottom:56px;text-align:center;max-width:1200px;margin:0 auto}
.guide-heading>.text-link{font-size:14px;margin-bottom:24px}
.guide-heading h1{font-size:clamp(40px,5.1vw,72px);line-height:1.12;max-width:19ch;margin:0 auto;letter-spacing:-.04em}
.guide-deck{max-width:65ch;margin:28px auto 0;font-size:19px;line-height:1.8;color:var(--muted)}
.guide-byline{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:12px 28px;font-size:12px;color:var(--muted);margin-top:30px}
.guide-cover{height:min(620px,58vw);overflow:hidden;margin:0 var(--gutter);background:var(--silver)}
.guide-cover img{height:100%;width:100%;object-fit:cover}
.guide-body{display:grid;grid-template-columns:.6fr 1.4fr;gap:13%;max-width:1440px;margin:0 auto}
.guide-contents{position:sticky;top:130px;align-self:start;max-width:240px}
.guide-contents>p{font-size:14px;font-weight:600;margin-bottom:18px}
.guide-contents nav{display:grid;gap:10px}
.guide-contents a{display:block;min-height:44px;padding:8px 0;font-size:14px;line-height:1.7;color:var(--muted)}
.guide-contents a:hover{color:var(--ink);text-decoration:underline}
.guide-prose section{margin-bottom:48px}
.guide-prose section h2{font-size:31px;line-height:1.3;letter-spacing:-.03em;margin-bottom:24px}
.guide-prose section p{font-size:17px;line-height:1.95;color:#3e575b;margin-top:20px}
.guide-disclaimer{font-size:14px;color:var(--muted);padding-top:26px;border-top:1px solid #ccd9d5}
.guide-related{display:grid;grid-template-columns:1fr 1fr;gap:32px 12%;align-items:start}
.guide-related .destination-card{grid-column:2;grid-row:1 / 3}
.guide-related>.text-link{justify-self:start}
.selected-journey{border-left:2px solid var(--action);background:var(--silver-soft);padding:16px 20px;margin-bottom:24px}
.selected-journey p{font-size:12px;color:var(--muted);margin-bottom:4px}
.selected-journey a{font-size:15px;line-height:1.7;font-weight:600;text-decoration:underline;display:inline-block;min-height:34px;padding:4px 0}
.footer-bottom>div{flex-wrap:wrap;align-items:center}
.motion-toggle{border:0;padding:4px 0;background:transparent;color:inherit;font-size:inherit;min-height:44px;text-decoration:underline;text-underline-offset:4px}
.motion-toggle:disabled{opacity:1;cursor:default;text-decoration:none}
.hero h1{max-width:750px}
html[lang^=zh] .route-hero h1{max-width:10em;font-size:clamp(48px,5.4vw,74px);line-height:1.22;letter-spacing:-.035em}
html[lang^=zh] .guide-heading h1{max-width:15ch;line-height:1.3}
html[lang^=zh] .destination-copy h3{line-height:1.4}
html[lang^=zh] .planning-heading h2{max-width:14ch}
@media(min-width:1800px){.route-hero-content{max-width:1600px;margin:auto}.route-hero{padding-left:max(var(--gutter),calc((100vw - 1600px)/2));padding-right:max(var(--gutter),calc((100vw - 1600px)/2))}}
@media(max-width:1100px){.collection-heading{gap:8%}.destination-grid{gap:56px 26px}.destination-copy h3{font-size:28px}.destination-grid>.destination-card:nth-child(n+3) h3{font-size:23px}.destination-description{font-size:14px}.destination-location{left:15px;bottom:16px;padding:11px 14px;font-size:12px}.image-link-arrow{right:15px;bottom:15px}.route-hero-content{gap:7%;grid-template-columns:1.2fr .8fr}.route-hero h1{font-size:64px}.trip-brief{padding:23px}.route-overview,.route-itinerary,.route-planning{gap:8%}.route-lead{font-size:20px}.experience-list{gap:30px}.journal-card h3{font-size:22px}.journal-grid{gap:24px}.journal-meta{font-size:12px}.guide-body{gap:9%}.guide-related{gap:32px 8%}}
@media(max-width:800px){.destination-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 26px}.destination-grid>.destination-card,.destination-grid>.destination-card:nth-child(n+3){grid-column:span 1}.destination-grid>.destination-card:first-child{grid-column:1 / -1}.destination-grid>.destination-card:first-child .destination-image-link{aspect-ratio:2.15}.destination-grid>.destination-card .destination-image-link{aspect-ratio:1.35}.destination-grid>.destination-card h3{font-size:25px}.destination-grid>.destination-card:first-child .destination-copy{display:grid;grid-template-columns:1fr 1fr;gap:12px 32px}.destination-grid>.destination-card:first-child .route-duration{grid-column:1;margin-bottom:0}.destination-grid>.destination-card:first-child h3{grid-column:1;margin-bottom:0}.destination-grid>.destination-card:first-child .destination-description{grid-column:2;grid-row:1/4}.destination-grid>.destination-card:first-child .journey-link{grid-column:1;margin-top:0}.journal-grid{grid-template-columns:1fr;gap:40px}.journal-card{display:grid;grid-template-columns:1fr 1fr;column-gap:28px;align-items:start}.journal-image{grid-row:1/5;aspect-ratio:1.2;height:100%}.journal-meta{margin:0 0 10px}.journal-card h3{font-size:24px}.journal-description{font-size:14px;margin-top:12px}.journal-card .text-link{justify-self:start;margin-top:9px}.route-hero{min-height:740px;height:92svh;padding-bottom:36px}.route-hero-content{grid-template-columns:1fr;gap:30px}.route-hero h1{max-width:16ch;font-size:58px}.route-hero-place{margin-bottom:16px}.trip-brief{max-width:none;display:flex;align-items:center;gap:22px;padding:20px 24px}.trip-brief dl{display:grid;grid-template-columns:1fr 1fr;gap:28px;flex:1}.trip-brief dd{font-size:15px}.trip-brief .button{width:auto;margin:0;max-width:190px;flex-shrink:0}.route-section-nav>.text-link{display:none}.route-section-nav{justify-content:center}.route-overview{grid-template-columns:.8fr 1.2fr;gap:8%}.route-lead{font-size:18px}.route-itinerary{grid-template-columns:.8fr 1.2fr;gap:7%}.itinerary-stops li{gap:16px;grid-template-columns:36px 1fr}.itinerary-stops h3{font-size:21px}.itinerary-stops p{font-size:15px}.route-interlude{height:420px}.experience-list{gap:24px}.experience-list h3{font-size:21px}.experience-list p{font-size:15px}.route-planning{gap:7%}.journey-cta{gap:34px}.journey-cta .button{font-size:14px;padding:14px 20px;gap:18px}.journey-cta p{font-size:16px}.guide-body{grid-template-columns:.65fr 1.35fr;gap:7%}.guide-contents a{font-size:13px}.guide-prose section h2{font-size:28px}.guide-prose section p{font-size:16px}.related-grid{gap:28px}}
@media(max-width:600px){.collection-heading{display:block;margin-bottom:38px}.collection-heading p{margin-top:25px;font-size:16px}.destination-grid{display:block}.destination-card+.destination-card{margin-top:42px}.destination-grid>.destination-card:first-child .destination-copy{display:block}.destination-grid>.destination-card:first-child .route-duration{margin-bottom:12px}.destination-grid>.destination-card:first-child h3{margin-bottom:14px}.destination-grid>.destination-card .destination-image-link,.destination-grid>.destination-card:first-child .destination-image-link{aspect-ratio:1.35}.destination-copy{padding-top:20px}.destination-grid>.destination-card h3{font-size:27px}.destination-description{font-size:15px}.destination-grid>.destination-card:first-child .journey-link{margin-top:18px}.collection-note{margin-top:32px;font-size:12px}.destination-location{font-size:12px;bottom:16px;left:16px}.journal-grid{margin-top:36px}.journal-card{display:block}.journal-image{aspect-ratio:1.55;height:auto}.journal-meta{margin:19px 0 12px}.journal-card h3{font-size:25px}.journal-description{font-size:15px}.journal-card .text-link{margin-top:12px}.route-hero{height:auto;min-height:810px;padding:218px var(--gutter) 25px}.route-breadcrumb{top:110px;font-size:12px;gap:12px}.route-hero-content{gap:32px}.route-hero h1{font-size:49px;max-width:13ch;letter-spacing:-.04em}.route-hero-place{font-size:12px}.route-hero-shade{background:linear-gradient(180deg,rgba(5,23,28,.48),rgba(5,23,28,.04) 23%,rgba(5,23,28,.42) 46%,rgba(5,23,28,.55))}.trip-brief{display:block;padding:22px}.trip-brief dl{gap:20px;grid-template-columns:1fr 1fr}.trip-brief dt{font-size:12px}.trip-brief dd{font-size:14px}.trip-brief .button{width:100%;max-width:none;margin-top:22px}.route-section-nav{padding:10px var(--gutter);font-size:12px}.route-section-nav>div{gap:20px;justify-content:space-between;width:100%}.route-overview{display:block}.route-overview>div{margin-top:30px}.route-lead{font-size:19px;line-height:1.8}.route-itinerary{display:block}.itinerary-intro{position:static}.itinerary-intro>p{max-width:none;font-size:16px;margin-top:24px}.itinerary-stops{margin-top:40px}.itinerary-stops li{gap:17px;padding-bottom:32px}.itinerary-stops h3{font-size:22px}.itinerary-stops p{font-size:16px}.experience-list{grid-template-columns:1fr;gap:30px;margin-top:36px}.experience-list h3{font-size:24px;margin-bottom:14px}.experience-list p{font-size:16px}.route-interlude{height:380px}.route-interlude figcaption{left:22px;right:22px;bottom:24px;padding:18px 20px;font-size:15px}.route-planning{display:block}.planning-heading h2{max-width:none}.vehicle-assurance{max-width:none;margin-top:30px}.planning-copy{margin-top:42px}.planning-copy h3{font-size:22px}.planning-copy p{font-size:15px}.journey-cta{display:block}.journey-cta .button{margin-top:30px;min-width:210px;justify-content:space-between}.related-journeys h2{margin-bottom:34px}.related-grid{grid-template-columns:1fr;gap:38px}.related-grid .destination-card+.destination-card{margin-top:0}.destination-compact .destination-image-link{aspect-ratio:1.55}.related-journeys>.text-link{margin-top:28px}.guide-heading{padding-top:42px;padding-bottom:34px}.guide-heading h1{font-size:41px;max-width:15ch;line-height:1.18}.guide-heading>.text-link{margin-bottom:16px}.guide-deck{font-size:17px;margin-top:23px;line-height:1.8}.guide-byline{font-size:11px;gap:8px 18px;margin-top:24px}.guide-cover{height:280px;margin:0}.guide-body{display:block}.guide-contents{position:static;max-width:none;border-bottom:1px solid #ccd9d5;padding-bottom:28px;margin-bottom:36px}.guide-contents nav{gap:3px}.guide-contents a{font-size:14px}.guide-prose section{margin-bottom:36px}.guide-prose section h2{font-size:28px}.guide-prose section p{font-size:17px;line-height:1.9}.guide-related{display:block}.guide-related h2{font-size:33px;margin-bottom:30px}.guide-related>.text-link{margin-top:26px}html[lang^=zh] .route-hero h1{font-size:43px;max-width:9em;line-height:1.25}html[lang^=zh] .guide-heading h1{font-size:37px;line-height:1.3}.hero h1{font-size:56px}.hero-description{max-width:31ch}}
@media(max-width:370px){.hero h1{font-size:48px}.route-hero h1{font-size:43px}.route-hero{min-height:780px;padding-top:195px}.trip-brief{padding:18px}.trip-brief dl{gap:14px}.route-section-nav{font-size:11px}.route-section-nav>div{gap:12px}.guide-heading h1{font-size:35px}html[lang^=zh] .route-hero h1{font-size:36px}}
