@font-face {
  font-family: "Druk LCG";
  src: url("assets/fonts/DrukLCG-Medium.ttf") format("truetype");
  font-style: normal;
  font-weight: 500;
  font-display: swap;
}

@font-face {
  font-family: "Druk LCG";
  src: url("assets/fonts/DrukLCG-Bold.ttf") format("truetype");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

:root {
  --ink: #1e1e1e;
  --orange: #ffa53f;
  --orange-text: #561a08;
  --muted: #666;
  --white: #fff;
}

* { box-sizing: border-box; }
html { background: var(--ink); scroll-behavior: smooth; }
html.smooth-scroll-active { scroll-behavior: auto; }
body { margin: 0; overflow-x: hidden; background: var(--ink); color: var(--ink); font-family: "Manrope", Arial, sans-serif; }
img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, a { -webkit-tap-highlight-color: transparent; }
.page-shell { width: 100%; overflow: hidden; background: var(--ink); }
.page-noise { position: fixed; top: 0; left: 0; z-index: 9999; width: 100dvw; height: 100dvh; pointer-events: none; opacity: .05; background-image: url("assets/noise.gif"); background-repeat: repeat; background-size: 80px 80px; }

@media (min-width: 768px) {
  .page-shell {
    width: 1440px;
    zoom: var(--desktop-scale, 1);
  }
}

.hero {
  position: relative;
  height: var(--desktop-hero-height, 1015px);
  color: var(--white);
}
.hero-media, .hero-shade { position: absolute; inset: 0 0 15px; width: 100%; height: calc(var(--desktop-hero-height, 1015px) - 15px); border-radius: 0 0 36px 36px; }
.hero-media { object-fit: cover; object-position: center 57%; background: #42688b url("assets/hero-raw-3.png") center 57% / cover no-repeat; }
.hero-shade { background: linear-gradient(180deg, rgba(15,20,22,.15) 0%, rgba(16,18,18,.07) 38%, rgba(15,16,18,.7) 100%); pointer-events: none; }
.site-header {
  position: absolute; top: 12px; left: 12px; z-index: 3;
  display: block; width: calc(100% - 24px); height: 72px;
  border-radius: 24px; background: rgba(255,255,255,.12);
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
}
.site-header--floating {
  position: fixed; z-index: 100; visibility: hidden; border: 0;
  background: #323232; box-shadow: none; opacity: 0; pointer-events: none;
  transition: opacity 300ms ease, visibility 0s linear 300ms;
}
.site-header--floating.is-visible {
  visibility: visible; opacity: 1; pointer-events: auto;
  transition: opacity 300ms ease;
}
.brand { position: relative; display: block; width: 388.5px; height: 72px; }
.brand-compass { position: absolute; top: -4px; left: -2px; width: 80px; height: 80px; }
.brand-desktop-wordmark { position: absolute; top: 23.347px; left: 78.5px; width: 310px; height: 25.306px; }
.brand-wordmark { display: none; }
.max-link { position: absolute; top: 8px; right: 8px; display: flex; width: 138px; height: 56px; align-items: center; gap: 1px; padding: 0; border-radius: 16px; color: #fff; background: linear-gradient(157.027deg,#484ef2 1.0454%,#a46ae0 98.955%); font-size: 22px; font-weight: 700; }
.max-link img { width: 56px; height: 56px; }
.hero-title, .format-intro h2, .reviews-heading h2, .directions-heading h2, .site-footer h2, .format-card h3, .max-panel h2 {
  margin: 0; font-family: "Druk LCG", Impact, "Arial Narrow", sans-serif; font-weight: 500; line-height: .9; letter-spacing: 0; text-transform: uppercase;
}
.hero-title { position: absolute; left: 40px; top: 137px; bottom: auto; z-index: 2; width: 833px; font-size: 100px; line-height: .9; }
.hero-title span { display: block; width: max-content; white-space: nowrap; }
.hero-note { position: absolute; left: 40px; top: auto; bottom: 47px; z-index: 2; margin: 0; color: rgba(255,255,255,.8); font-size: 20px; font-weight: 500; line-height: 1.3; }
.hero-card {
  position: absolute; top: auto; right: auto; bottom: 88px; left: 40px; z-index: 2; width: 460px; height: auto; margin: 0; padding: 0;
  border: 0; border-radius: 0; background: transparent; box-shadow: none;
  -webkit-backdrop-filter: none; backdrop-filter: none;
}
.hero-location { display: none; width: 60px; height: 60px; margin-left: 3px; place-items: center; border-radius: 12px; background: #292929; }
.hero-location img { width: 24px; height: 27px; }
.hero-card p { width: 460px; margin: 0; font-size: 24px; font-weight: 600; line-height: 1.3; letter-spacing: 0; }
.hero-card .primary-button { margin-top: 19px; margin-left: 0; }
.primary-button { display: inline-flex; min-height: 62px; align-items: center; justify-content: center; margin-top: 26px; padding: 10px 20px 12px; border-radius: 12px; background: var(--orange); color: var(--orange-text); font-size: 22px; font-weight: 700; letter-spacing: -.025em; transition: transform 180ms ease, filter 180ms ease; }
.primary-button:hover { filter: brightness(.97); transform: translateY(-2px); }
.primary-button:focus-visible, .socials a:focus-visible, .max-link:focus-visible, .reviews-track:focus-visible { outline: 3px solid #316cff; outline-offset: 3px; }

.max-section { position: relative; height: 371px; margin-top: 31px; }
.max-panel { position: absolute; inset: 12px; display: block; overflow: hidden; border-radius: 28px; color: var(--white); background: linear-gradient(173.1628deg,#2342f9 3.1184%,#a66be0 97.409%); }
.max-decor { position: absolute; z-index: 0; display: block; max-width: none; pointer-events: none; }
.max-decor--top { top: -275.415px; left: 122.416px; width: 350.149px; height: 350.149px; transform: rotate(-108.54deg); transform-origin: 50% 50%; }
.max-decor--right { top: 78.394px; left: 1083.834px; width: 537.873px; height: 537.873px; transform: rotate(-165deg); transform-origin: 50% 50%; }
.max-mark { position: absolute; top: 24px; left: 28px; z-index: 1; width: 72px; height: 72px; }
.max-panel h2 { position: absolute; top: 163px; left: 28px; z-index: 1; width: 440px; font-size: 90px; line-height: .8222; white-space: normal; }
.max-panel h2 { transform: none; }
.max-chips { position: absolute; top: 96px; left: 468px; z-index: 2; display: flex; width: 640px; flex-wrap: wrap; align-content: flex-start; gap: 8px; }
.max-chips span { display: inline-flex; min-height: 52px; align-items: center; padding: 14px 14px 16px; border: 0; border-radius: 16px; background: rgba(255,255,255,.18); font-size: 18px; font-weight: 500; line-height: 1.2; white-space: nowrap; backdrop-filter: blur(27px); }
.max-subscribe { position: absolute; left: 468px; top: 289px; z-index: 2; margin: 0; font-size: 18px; font-weight: 500; line-height: 1.2; }
.max-subscribe a { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 4px; }
.max-orbit { position: absolute; right: -108px; bottom: -215px; width: 570px; height: 570px; border: 32px solid rgba(255,255,255,.18); border-radius: 50%; }
.max-orbit::before, .max-orbit::after { position: absolute; border: 3px solid rgba(255,255,255,.20); border-radius: 50%; content: ""; }
.max-orbit::before { inset: 58px; }.max-orbit::after { inset: 126px; }

.format-section { position: relative; height: 900px; margin-top: 46px; color: var(--white); background: var(--ink); }
.format-intro { position: absolute; top: 69px; left: 40px; z-index: 2; }
.dark-eyebrow { display: inline-flex; height: 46px; align-items: center; margin: 0; padding: 0 16px; border: 1px solid rgba(255,255,255,.12); border-radius: 30px; color: rgba(255,255,255,.9); background: #282828; font-size: 18px; font-weight: 400; line-height: 1.4; }
.format-intro .dark-eyebrow { width: 127px; justify-content: center; padding-inline: 0; }
.format-intro h2 { margin-top: 26px; font-size: 120px; line-height: .9; }
.format-intro h2 span { display: block; width: max-content; white-space: nowrap; }
.format-intro h2 span:last-child { color: var(--orange); }
.format-copy { position: absolute; top: 307px; left: 0; width: 621px; margin: 0; font-size: 20px; font-weight: 500; line-height: 1.3; letter-spacing: 0; }
.format-copy strong { font-weight: 700; }
.format-copy-text--mobile { display: none; }
.format-copy-break { display: block; }
.format-photo { position: absolute; z-index: 3; display: flex; align-items: center; justify-content: center; margin: 0; pointer-events: none; }
.format-photo__frame { display: flex; width: 302.344px; height: 368.751px; flex: 0 0 auto; align-items: center; padding: 4.688px; background: var(--white); }
.format-photo__crop { position: relative; display: block; width: 292.969px; height: 359.375px; overflow: hidden; }
.format-photo img { position: absolute; display: block; max-width: none; }
.format-photo--venice { top: 19px; left: 1028.3px; width: 331.777px; height: 392.47px; }
.format-photo--venice .format-photo__frame { transform: rotate(-4.74deg); }
.format-photo--venice img { top: -10.13%; left: -.68%; width: 105.28%; height: 114.43%; object-fit: cover; }
.format-photo--japan { top: 140.91px; left: 790px; width: 359.827px; height: 414.175px; }
.format-photo--japan .format-photo__frame { transform: rotate(-9.64deg); }
.format-photo--japan img { inset: 0; width: 100%; height: 100%; object-fit: cover; }
.format-cards { position: absolute; top: 520px; left: 40px; display: grid; grid-template-columns: repeat(4,325px); gap: 20px; }
.format-card { position: relative; height: 325px; padding: 24px; border-radius: 36px; color: var(--ink); background: var(--white); }
.format-icon { display: grid; width: 60px; height: 60px; place-items: center; border-radius: 12px; background: var(--orange); }
.format-icon img { display: block; max-width: none; object-fit: contain; }
.format-card:nth-child(1) .format-icon img, .format-card:nth-child(4) .format-icon img { width: 26.667px; height: 24px; }
.format-card:nth-child(2) .format-icon img { width: 26.667px; height: 26.667px; }
.format-card:nth-child(3) .format-icon img { width: 18.667px; height: 26.667px; }
.format-card h3 { position: absolute; top: 145px; left: 24px; font-size: 48px; font-weight: 700; line-height: 1.3; letter-spacing: .02em; white-space: nowrap; }
.format-card h3 em { color: var(--orange); font-style: normal; }
.format-card p { position: absolute; top: 218px; left: 24px; margin: 0; font-size: 20px; font-weight: 500; line-height: 1.3; letter-spacing: -.02em; opacity: .9; }
.format-desc--mobile { display: none; }

.reviews-section { position: relative; height: 900px; margin-top: 46px; overflow: hidden; color: var(--white); background: var(--ink); }
.reviews-heading { position: absolute; top: 25px; left: 0; width: 100%; text-align: center; }
.reviews-title-wrap { position: static; height: 0; margin: 0; }
.reviews-title-wrap img { position: absolute; top: 22.768px; width: 74.097px; height: 195.949px; max-width: none; object-fit: contain; transform-origin: 50% 50%; }
.reviews-title-wrap img:first-child { left: 349.647px; transform: rotate(170.51deg) scaleY(-1); }
.reviews-title-wrap img:last-child { left: 1016.647px; transform: rotate(9.49deg); }
.reviews-heading h2 { position: absolute; top: 78px; left: 50%; margin: 0; font-size: 120px; white-space: nowrap; transform: translateX(-50%); }
.reviews-heading > p:last-child { position: absolute; top: 186px; left: 50%; margin: 0; font-size: 20px; font-weight: 500; white-space: nowrap; transform: translateX(-50%); }
.reviews-track { position: absolute; top: 289px; left: 0; display: flex; width: max-content; align-items: flex-start; gap: 20px; padding: 0; overflow: visible; transform: translate3d(var(--reviews-x,-740px),0,0); cursor: grab; touch-action: pan-y; user-select: none; will-change: transform; }
.reviews-track.is-dragging { cursor: grabbing; }
.review-card { position: relative; display: flex; width: 400px; min-height: 0; flex: 0 0 400px; flex-direction: column; align-items: flex-start; padding: 12px 12px 32px; border-radius: 36px; color: var(--ink); background: var(--white); }
.review-photo { width: 200px; height: 240px; border-radius: 24px; object-fit: cover; }
.review-photo-crop { width: 200px; height: 240px; flex: 0 0 240px; overflow: hidden; border-radius: 24px; }
.review-photo-crop .review-photo--anna { width: 268.5px; height: 358px; max-width: none; border-radius: 0; object-fit: fill; transform: translate(-34.24px,-73.68px); }
.review-quote { position: absolute; top: 20px; right: 20px; width: 52px; height: 52px; background: url("assets/review-quote-exact.svg") center / 35.98px 30.33px no-repeat; font-size: 0; }
.review-card p { width: calc(100% - 16px); margin: 24px 8px 0; color: #6f6f6f; font-size: 18px; font-weight: 500; line-height: 1.4; letter-spacing: -.18px; }
.review-copy--mobile { display: none; }
.review-card h3 { width: calc(100% - 16px); margin: 20px 8px 0; font-size: 24px; font-weight: 700; line-height: 1.3; letter-spacing: -.48px; text-transform: uppercase; }
.review-trip { display: inline-flex; align-items: center; margin: 12px 8px 0; padding: 4px 10px 5px; border-radius: 30px; color: var(--white); background: var(--ink); font-size: 16px; font-weight: 700; line-height: 1.4; text-transform: uppercase; }
.pre-directions-gap { height: 46px; background: var(--ink); }.top-ear { height: 60px; background: var(--ink); }

.directions-scroll { position: relative; height: 1346px; background: var(--ink); }
.directions-stage { position: relative; top: 28px; height: 1404px; overflow: hidden; border-radius: 48px 48px 0 0; background: var(--white); }
.directions-heading { position: absolute; top: 44px; left: 40px; z-index: 2; }
.eyebrow { display: inline-flex; min-height: 42px; align-items: center; margin: 0 0 18px; padding: 9px 16px 10px; border: 1px solid #ebebeb; border-radius: 30px; color: var(--muted); background: #f5f5f5; font-size: 18px; line-height: 1.25; }
.directions-heading h2 { width: 700px; font-size: 120px; }
.title-line { display: block; width: max-content; white-space: nowrap; }.title-line--accent { color: var(--orange); }
.desktop-card-window { position: absolute; top: 0; left: 748px; z-index: 1; width: 692px; height: 866px; overflow: hidden; }
.desktop-card-column { --direction-loop: 2634px; --direction-duration: 146.33s; position: absolute; top: 0; display: flex; width: 338px; flex-direction: column; gap: 16px; animation-duration: var(--direction-duration); animation-timing-function: linear; animation-iteration-count: infinite; will-change: transform; }
.desktop-card-column--left { --column-start: -342px; left: 0; animation-name: direction-column-up; }.desktop-card-column--right { --column-start: -122px; left: 354px; animation-name: direction-column-down; }
@keyframes direction-column-up { from { transform: translate3d(0,var(--column-start),0); } to { transform: translate3d(0,calc(var(--column-start) - var(--direction-loop)),0); } }
@keyframes direction-column-down { from { transform: translate3d(0,calc(var(--column-start) - var(--direction-loop)),0); } to { transform: translate3d(0,var(--column-start),0); } }
@keyframes direction-row-left { from { transform: translate3d(0,0,0); } to { transform: translate3d(calc(0px - var(--mobile-loop)),0,0); } }
@keyframes direction-row-right { from { transform: translate3d(calc(0px - var(--mobile-loop)),0,0); } to { transform: translate3d(0,0,0); } }
.destination-card { position: relative; flex: 0 0 423px; width: 338px; height: 423px; overflow: hidden; border-radius: 48px; background: #d8d8d8; }
.destination-card::after { position: absolute; inset: 40.544% 0 0; display: none; background: linear-gradient(to bottom,rgba(0,0,0,0),rgba(0,0,0,.4)); content: ""; pointer-events: none; }
.destination-card > img { display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; pointer-events: none; }
.destination-card--italy::after { display: block; }
.destination-card--italy > img { position: absolute; top: -7.14%; left: -1.32%; width: 102.64%; height: 109.51%; object-fit: fill; }
.destination-card--philippines > img { position: absolute; top: -73.91%; left: -16.57%; width: 133.14%; height: 187.84%; object-fit: fill; }
.destination-card--korea > img { position: absolute; top: -14.34%; left: -7.24%; width: 114.47%; height: 114.34%; object-fit: fill; }
.destination-card--montenegro > img { position: absolute; top: -12.76%; left: -6.45%; width: 112.89%; height: 112.76%; object-fit: fill; }
.destination-pill { position: absolute; right: 25px; bottom: 25px; left: 25px; z-index: 1; display: flex; height: 68px; align-items: center; gap: 10px; padding: 12px; border-radius: 50px; background: var(--white); font-size: 20px; font-weight: 500; line-height: 1; letter-spacing: -.02em; }
.flag { display: grid; width: 60px; height: 44px; flex: 0 0 60px; place-items: center; border-radius: 100px; background: #efefef; }
.flag img { display: block; width: 32px; height: 32px; object-fit: contain; }
.directions-fade { position: absolute; top: 630px; left: 458px; z-index: 2; width: 982px; height: 278px; background: linear-gradient(180deg,rgba(255,255,255,0) 0%,#fff 82.734%); pointer-events: none; }
.directions-details { position: absolute; top: 427px; left: 40px; z-index: 3; width: 621px; }
.globe-box { display: grid; width: 60px; height: 60px; margin-bottom: 20px; place-items: center; border-radius: 12px; background: var(--orange); }.globe-box img { width: 32px; height: 32px; }
.directions-details p { margin: 0; font-size: 20px; font-weight: 500; line-height: 1.3; }.mobile-card-window { display: none; }
.directions-copy--mobile { display: none; }

.footer-gap { height: 0; }
.footer-card-shell { display: contents; }
.site-footer { position: relative; z-index: 4; height: 392px; margin: -404px 12px 0; overflow: visible; border-radius: 36px; color: var(--white); background: var(--ink); }
.footer-compass { position: absolute; top: 28px; left: 28px; width: 81px; height: 81px; }
.site-footer h2 { position: absolute; top: 124px; left: 28px; width: 500px; font-size: 60px; }
.footer-title-layout { display: block; }.footer-title-layout--mobile { display: none; }.footer-title-line { display: block; width: max-content; white-space: nowrap; }.footer-title-line--accent { color: var(--orange); }
.socials { position: absolute; top: 256px; left: 28px; display: flex; gap: 8px; }.socials a { display: flex; min-height: 56px; align-items: center; gap: 8px; padding: 16px 20px 16px 16px; border-radius: 100px; color: var(--ink); background: var(--white); font-size: 18px; font-weight: 700; }.socials img { width: 24px; height: 24px; }
.footer-legal { position: absolute; bottom: 30px; left: 28px; display: flex; gap: 38px; color: rgba(255,255,255,.56); font-size: 16px; }.footer-photo { position: absolute; z-index: 2; width: 302.345px; height: 368.751px; padding: 4.688px; background: var(--white); transform-origin: center; }.footer-photo > img { display: block; width: 100%; height: 100%; object-fit: cover; }.footer-photo > span { position: relative; display: block; width: 100%; height: 100%; overflow: hidden; }.footer-photo--snow { top: -24.35px; left: 806px; transform: rotate(6.41deg); }.footer-photo--snow img { position: absolute; top: -60.09%; left: -42.01%; width: 175.35%; height: 248.83%; max-width: none; object-fit: fill; }.footer-photo--lantern { top: -69.94px; left: 1058.22px; transform: rotate(11.31deg); }
.bottom-ear { height: 12px; background: var(--white); }

@media (prefers-reduced-motion: reduce) {
  .desktop-card-column, .mobile-card-row { animation: none !important; will-change: auto; }
  .desktop-card-column { transform: translate3d(0,var(--column-start),0); }
  .page-noise { background-image: none; }
}

@media (max-width: 767px) {
  html, body { scrollbar-width: none; }
  body::-webkit-scrollbar { display: none; width: 0; height: 0; }
  .page-shell { width: 100%; }
  .hero { height: 844px; }
  .hero-media, .hero-shade { top: 0; right: -2px; bottom: auto; left: 0; width: calc(100% + 2px); height: 846px; border-radius: 0; }
  .hero-media { object-position: center 52%; }
  .hero-shade { background: linear-gradient(180deg,rgba(18,20,24,.06) 0%,rgba(18,20,24,.1) 38%,rgba(17,18,19,.32) 58%,rgba(30,30,30,.72) 78%,var(--ink) 100%); }
  .hero::after { position: absolute; right: 0; bottom: -2px; left: 0; z-index: 2; height: 4px; background: var(--ink); content: ""; pointer-events: none; }
  .site-header { top: 12px; left: 12px; width: calc(100% - 24px); height: 61px; padding: 0; border: 1px solid rgba(255,255,255,.1); border-radius: 20px; background: rgba(51,52,55,.64); box-shadow: inset 0 2px 8px rgba(255,255,255,.06); backdrop-filter: blur(12px); }
  .brand { position: absolute; inset: 0 auto 0 0; width: 270px; height: 61px; font-size: 0; }
  .brand-compass { position: absolute; top: -2.48px; left: -2px; width: 63.36px; height: 63.36px; flex-basis: auto; }
  .brand-desktop-wordmark { display: none; }
  .brand-wordmark { position: absolute; top: 23.18px; left: 58.64px; display: block; width: 189.961px; height: 13.032px; }
  .max-link { position: absolute; top: 10px; right: 10px; left: auto; width: 40px; height: 40px; padding: 0; border-radius: 12px; }
  .max-link img { width: 40px; height: 40px; }
  .max-link span { display: none; }
  .hero-title { top: 446px; bottom: auto; left: 16px; width: calc(100% - 32px); font-size: 52px; line-height: .9167; letter-spacing: 0; transform: none; }
  .hero-title span,.hero-title span:first-child { width: max-content; transform: none; white-space: nowrap; }
  .hero-note { top: 800px; bottom: auto; left: 16px; font-size: 14px; transform: none; }
  .hero-card { top: 609px; right: auto; bottom: auto; left: 16px; width: calc(100% - 32px); height: auto; padding: 0; background: transparent; backdrop-filter: none; transform: none; }
  .hero-location { display: none; }.hero-card p { width: 100%; margin: 0; font-size: 18px; line-height: 1.28; }.hero-card .primary-button { width: 100%; min-height: 58px; margin-top: 28px; margin-left: 0; }

  .max-section { height: 486px; margin-top: 65px; }.max-panel { inset: 0 8px; display: block; border-radius: 28px; }
  .max-decor { display: none; }
  .max-decor--right { top: auto; right: -145px; bottom: -70px; left: auto; display: block; width: 200px; height: 200px; transform: rotate(-165deg); }
  .max-mark { top: 32px; left: auto; right: 26px; width: 72px; height: 72px; }.max-panel h2 { top: 28px; left: 16px; width: 193px; font-size: 48px; line-height: .9; white-space: normal; transform: none; }
  .max-chips { top: 129px; left: 16px; width: calc(100% - 32px); gap: 8px; }.max-chips span { min-height: 43px; padding: 10px 12px 11px; border: 1px solid rgba(255,255,255,.18); border-radius: 12px; background: rgba(255,255,255,.12); font-size: 16px; }
  .max-subscribe { top: 398px; bottom: auto; left: 24px; width: 232px; font-size: 18px; font-weight: 500; line-height: 1.4; }
  .max-orbit { right: -108px; bottom: -133px; width: 356px; height: 356px; border-width: 24px; }.max-orbit::before { inset: 40px; }.max-orbit::after { inset: 90px; }

  .format-section { height: 1038px; margin-top: 89px; }
  .format-intro { top: 16px; left: 15px; right: 15px; }.dark-eyebrow { min-height: 46px; font-size: 18px; }
  .format-intro h2 { margin-top: 24px; font-size: 56px; line-height: .95; }.format-intro h2 span { width: max-content; transform: none; white-space: nowrap; }
  .format-copy { position: static; width: 100%; margin-top: 20px; font-size: 18px; line-height: 23px; }.format-copy-text--desktop { display: none; }.format-copy-text--mobile { display: inline; }.format-copy-break { display: none; }
  .format-photos { display: none; }
  .format-cards { top: 314px; left: 16px; right: 16px; display: flex; flex-direction: column; gap: 12px; }
  .format-card { width: 100%; height: 172px; flex: 0 0 172px; padding: 22px 24px; border-radius: 24px; }
  .format-icon { position: absolute; top: 22px; right: 22px; width: 56px; height: 56px; }.format-icon img { width: 29px; height: 29px; }
  .format-card h3 { top: 23px; left: 24px; max-width: calc(100% - 105px); font-size: 44px; line-height: 1.3; }.format-card p { top: 94px; right: 24px; left: 24px; font-size: 18px; line-height: 1.28; }
  .format-desc--desktop { display: none; }.format-desc--mobile { display: inline; }

  .reviews-section { height: 950px; margin-top: 90px; }
  .reviews-heading { top: 0; }.reviews-heading .dark-eyebrow { min-height: 46px; }.reviews-title-wrap img { top: 38px; width: 42px; height: 111px; }.reviews-title-wrap img:first-child { left: calc(50% - 156px); }.reviews-title-wrap img:last-child { left: calc(50% + 114px); }.reviews-heading h2 { top: 65px; font-size: 56px; line-height: .9; transform: translateX(-50%); }
  .reviews-heading > p:last-child { top: 132px; width: 280px; margin: 0; font-size: 18px; line-height: 23px; white-space: normal; }
  .reviews-track { top: 206px; left: 0; width: max-content; gap: 12px; padding: 0; overflow: visible; transform: translate3d(var(--reviews-x,-290px),0,0); scrollbar-width: none; }.reviews-track::-webkit-scrollbar { display: none; }
  .review-card, .review-card--short, .review-card--mid { width: 310px; min-height: 0; flex-basis: 310px; border-radius: 36px; }
  .review-photo { width: 200px; height: 240px; border-radius: 24px; }.review-photo-crop { width: 200px; height: 240px; flex-basis: 240px; border-radius: 24px; }.review-photo-crop .review-photo--anna { width: 268.5px; height: 358px; transform: translate(-34.24px,-73.68px); }.review-quote { right: 20px; font-size: 0; }.review-card p { margin: 24px 8px 0; font-size: 18px; line-height: 1.4; }.review-card h3 { margin: 20px 8px 0; font-size: 24px; }.review-trip { min-height: 0; margin: 12px 8px 0; font-size: 16px; }
  .review-card--left-inset p,.review-card--left-inset h3 { width: calc(100% - 8px); margin-right: 0; }.review-card--left-inset .review-trip { margin-right: 0; }
  .review-copy--desktop { display: none; }.review-copy--mobile { display: inline; }
  .pre-directions-gap { height: 46px; }.top-ear { display: none; }

  .directions-scroll, .directions-stage { height: 1191px; border-radius: 32px 32px 0 0; }
  .directions-stage { position: relative; top: auto; }.directions-heading { top: 20px; left: 16px; }.eyebrow { min-height: 46px; margin-bottom: 20px; font-size: 18px; }
  .directions-heading .eyebrow { margin-bottom: 24px; }.directions-heading h2 { width: calc(100vw - 32px); max-width: 358px; font-size: 56px; line-height: .95; letter-spacing: 0; }.title-line--base,.title-line--accent { transform: none; }
  .desktop-card-window { display: none; }.mobile-card-window { position: absolute; top: 206px; left: 0; display: block; width: 100%; height: 548px; overflow: hidden; }
  .mobile-card-row { --mobile-loop: 1548px; --mobile-duration: 86s; position: absolute; display: flex; gap: 8px; width: max-content; animation-duration: var(--mobile-duration); animation-timing-function: linear; animation-iteration-count: infinite; will-change: transform; }.mobile-card-row--first { top: 0; left: -35px; animation-name: direction-row-left; }.mobile-card-row--second { top: 278px; left: -164px; animation-name: direction-row-right; }
  .destination-card--mobile { width: 250px; height: 270px; flex-basis: 250px; border-radius: 40px; }.destination-card--mobile .destination-pill { right: 16px; bottom: 16px; left: 16px; height: 51px; gap: 7.5px; padding: 9px; font-size: 18px; }.destination-card--mobile .flag { width: 45px; height: 33px; flex-basis: 45px; }.destination-card--mobile .flag img { width: 24px; height: 24px; }
  .directions-fade { display: none; }
  .directions-details { top: 816px; left: 16px; width: calc(100% - 32px); }.directions-details p { font-size: 16px; line-height: 21px; letter-spacing: -.02em; }.directions-details .primary-button { width: 100%; min-height: 58px; margin-top: 32px; }
  .directions-copy--desktop { display: none; }.directions-copy--mobile { display: inline; }
  .footer-gap { display: block; height: 28px; background: var(--white); }.footer-card-shell { display: block; padding: 0 10px; background: var(--white); }.site-footer { width: 100%; height: 497px; margin: 0; overflow: hidden; border-radius: 24px; box-shadow: none; }.footer-compass { top: 20px; left: 20px; }.site-footer h2 { top: 142px; left: 20px; width: calc(100% - 40px); font-size: 56px; line-height: .9; }.footer-title-layout--desktop { display: none; }.footer-title-layout--mobile { display: block; }.footer-title-line--base,.footer-title-line--accent { transform: none; }.footer-title-line--mobile-second em { color: var(--orange); font-style: normal; }
  .socials { top: 256px; left: 20px; width: 230px; flex-wrap: wrap; }.footer-legal { bottom: 30px; left: 28px; flex-direction: column; gap: 7px; font-size: 14px; }.footer-photo { display: none; }.bottom-ear { height: 10px; }
}

@media (prefers-reduced-motion: reduce) {
  .reviews-track { will-change: auto; }
}

@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; }.desktop-card-column,.mobile-card-row,.primary-button { transition: none; } }
