/* Premium editorial treatment scoped to the Travel Packages feature. */
.travlink-travel-feature--packages {
  display: block;
  width: 100%;
}

.travlink-packages-editorial__intro {
  max-width: 760px;
  margin: 0 auto;
  text-align: center;
}

.travlink-travel-feature--packages .travlink-packages-editorial__intro h2 {
  max-width: 760px;
  margin: 20px auto 0;
}

.travlink-packages-editorial__intro > p {
  max-width: 610px;
  margin: 20px auto 0;
  color: #647184;
  font: 400 16px/1.75 Outfit, Inter, sans-serif;
}

.travlink-package-categories {
  display: grid;
  gap: 0;
  margin-top: 0;
}

/* Essential Travel: cinematic horizontal service showcase. */
.travlink-essential-showcase {
  position: relative;
  width: 100vw;
  min-height: clamp(700px, 46vw, 820px);
  margin-inline: calc(50% - 50vw);
  overflow: hidden;
  background:
    radial-gradient(circle at 58% 54%, rgba(73, 65, 102, .24), transparent 31%),
    linear-gradient(135deg, #11101a 0%, #191622 50%, #100f18 100%);
  isolation: isolate;
}

.travlink-essential-showcase::before {
  position: absolute;
  inset: -18%;
  z-index: -1;
  background:
    repeating-conic-gradient(
      from 218deg at 55% 53%,
      rgba(220, 214, 229, .15) 0 .08deg,
      transparent .08deg 4.5deg
    );
  content: "";
  opacity: .22;
  pointer-events: none;
  transform: scale(1.12);
  animation: travlinkEssentialStreaks 18s ease-in-out infinite alternate;
}

.travlink-essential-showcase::after {
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(90deg, rgba(3, 10, 19, .32), transparent 52%, rgba(3, 10, 19, .22));
  content: "";
  pointer-events: none;
}

.travlink-essential-showcase__intro {
  position: absolute;
  top: 0;
  left: max(calc((100vw - 1500px) / 2), 6vw);
  z-index: 2;
  width: min(610px, 39vw);
  padding-top: clamp(34px, 3vw, 58px);
}

.travlink-essential-showcase__index {
  display: none;
}

.travlink-essential-showcase__eyebrow {
  display: inline-block;
  color: #ff4e29;
  font: 700 12px/1.2 Outfit, Inter, sans-serif;
  letter-spacing: .28em;
  text-transform: uppercase;
}

.travlink-essential-showcase__intro h3 {
  max-width: 590px;
  margin: 14px 0 0;
  color: #ff4e29;
  font: 500 clamp(55px, 4.9vw, 82px)/.9 "Cormorant Garamond", Georgia, serif;
  letter-spacing: -.025em;
  text-wrap: balance;
}

.travlink-essential-showcase__intro > p {
  max-width: 530px;
  margin: 38px 0 0 max(48px, 5vw);
  color: rgba(255, 255, 255, .88);
  font: 500 clamp(16px, 1.05vw, 20px)/1.28 Outfit, Inter, sans-serif;
}

.travlink-essential-showcase__nav {
  display: grid;
  gap: 0;
  width: 255px;
  margin-top: 28px;
  padding-left: 14px;
  border-left: 1px solid rgba(255, 255, 255, .82);
}

.travlink-essential-showcase__nav button {
  position: relative;
  width: 100%;
  padding: 7px 0;
  border: 0;
  background: transparent;
  color: rgba(255, 255, 255, .4);
  font: 500 11px/1.35 Outfit, Inter, sans-serif;
  text-align: left;
  transition: color .3s ease, transform .3s ease;
}

.travlink-essential-showcase__nav button::before {
  position: absolute;
  top: 50%;
  left: -18px;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #fff;
  box-shadow: none;
  content: "";
  opacity: 0;
  transform: translateY(-50%);
  transition: opacity .3s ease;
}

.travlink-essential-showcase__nav button span {
  display: inline-block;
  width: 31px;
  color: rgba(255, 78, 41, .48);
  font-size: 10px;
  letter-spacing: .08em;
}

.travlink-essential-showcase__nav button:is(:hover, :focus-visible, .is-active) {
  color: #fff;
  transform: none;
}

.travlink-essential-showcase__nav button.is-active::before { opacity: 1; }
.travlink-essential-showcase__nav button.is-active span { color: #ff4e29; }

.travlink-essential-showcase__progress { display: none; }

/* Numbered service navigation shared by the light editorial showcases. */
.travlink-showcase-service-nav {
  display: grid;
  width: 255px;
  margin-top: 28px;
  padding-left: 14px;
  border-left: 1px solid rgba(21, 87, 176, .62);
}

.travlink-showcase-service-nav button {
  position: relative;
  width: 100%;
  padding: 7px 0;
  border: 0;
  background: transparent;
  color: rgba(19, 33, 58, .43);
  font: 500 11px/1.35 Outfit, Inter, sans-serif;
  text-align: left;
  transition: color .3s ease, transform .3s ease;
}

.travlink-showcase-service-nav button::before {
  position: absolute;
  top: 50%;
  left: -18px;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #1557b0;
  content: "";
  opacity: 0;
  transform: translateY(-50%);
  transition: opacity .3s ease;
}

.travlink-showcase-service-nav button span {
  display: inline-block;
  width: 31px;
  color: rgba(21, 87, 176, .5);
  font-size: 10px;
  letter-spacing: .08em;
}

.travlink-showcase-service-nav button:is(:hover, :focus-visible, .is-active) {
  color: #13213a;
  outline: none;
  transform: translateX(4px);
}

.travlink-showcase-service-nav button.is-active::before { opacity: 1; }
.travlink-showcase-service-nav button.is-active span { color: #1557b0; }

.travlink-swipe-cue {
  position: absolute;
  z-index: 3;
  display: flex;
  width: max-content;
  align-items: center;
  gap: 12px;
  margin: 0;
  color: rgba(19, 33, 58, .55);
  font: 700 10px/1 Outfit, Inter, sans-serif;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.travlink-swipe-cue i {
  position: relative;
  display: block;
  width: 40px;
  border-top: 1px solid currentColor;
  animation: travlinkSwipeCue 1.7s ease-in-out infinite;
}

.travlink-swipe-cue i::after {
  position: absolute;
  top: -4px;
  right: 0;
  width: 7px;
  height: 7px;
  border-top: 1px solid currentColor;
  border-right: 1px solid currentColor;
  content: "";
  transform: rotate(45deg);
}

.travlink-swipe-cue--dark { color: rgba(255, 255, 255, .58); }

.travlink-swipe-cue--essential {
  top: calc(clamp(245px, 17vw, 292px) - 32px);
  left: calc(48.5% + 28px);
}

.travlink-swipe-cue--ocean {
  top: 279px;
  left: 32.7%;
}

@keyframes travlinkSwipeCue {
  0%, 100% { opacity: .45; transform: translateX(0); }
  50% { opacity: 1; transform: translateX(8px); }
}

.travlink-essential-showcase__viewport {
  position: absolute;
  top: clamp(245px, 17vw, 292px);
  right: 0;
  bottom: 0;
  left: 48.5%;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scrollbar-width: none;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
}

.travlink-essential-showcase__viewport::-webkit-scrollbar { display: none; }

.travlink-essential-showcase__track {
  display: flex;
  width: max-content;
  min-height: 100%;
  align-items: flex-start;
  gap: clamp(54px, 4.2vw, 82px);
  padding: 0 max(90px, 7vw) 34px 28px;
}

.travlink-essential-card {
  position: relative;
  width: clamp(190px, 11vw, 210px);
  min-height: 430px;
  flex: 0 0 auto;
  scroll-snap-align: center;
  opacity: .42;
  transform: scale(.98);
  transform-origin: center;
  transition: opacity .48s ease, transform .48s cubic-bezier(.22, 1, .36, 1);
}

.travlink-essential-card__number {
  display: block;
  margin-bottom: 24px;
  color: rgba(226, 238, 248, .46);
  font: 700 24px/1 Outfit, Inter, sans-serif;
  letter-spacing: .04em;
  transition: color .35s ease;
}

.travlink-essential-card figure {
  position: relative;
  height: clamp(250px, 14.4vw, 272px);
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(153, 198, 235, .16);
  border-radius: 14px;
  background: #0d1928;
  box-shadow: 0 18px 42px rgba(0, 0, 0, .2);
  transition: border-color .4s ease, box-shadow .4s ease;
}

.travlink-essential-card figure::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(4, 11, 20, .03), rgba(4, 11, 20, .38));
  content: "";
  transition: opacity .4s ease;
}

.travlink-essential-card img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(.72) contrast(1.04);
  transform: scale(1.035);
  transition: filter .55s ease, transform .8s cubic-bezier(.22, 1, .36, 1);
}

.travlink-essential-card h4 {
  margin: 28px 0 0;
  color: rgba(255, 78, 41, .34);
  font: 700 clamp(22px, 1.55vw, 29px)/1.08 Outfit, Inter, sans-serif;
  letter-spacing: -.025em;
  transition: color .35s ease;
}

.travlink-essential-card:is(:hover, :focus-visible, .is-active) {
  opacity: 1;
  outline: none;
  transform: translateY(-6px) scale(1.02);
}

.travlink-essential-card.is-active .travlink-essential-card__number { color: #fff; }
.travlink-essential-card.is-active figure { border-color: rgba(255, 78, 41, .38); box-shadow: 0 25px 58px rgba(0, 0, 0, .38); }
.travlink-essential-card.is-active figure::after { opacity: .45; }
.travlink-essential-card.is-active img { filter: saturate(.98) contrast(1.06); transform: scale(1.08); }
.travlink-essential-card.is-active h4 { color: #ff4e29; }

@keyframes travlinkEssentialStreaks {
  from { transform: scale(1.1) translate3d(-.5%, 0, 0); }
  to { transform: scale(1.16) translate3d(.5%, -.4%, 0); }
}

/* Luxury Experiences: open, full-width editorial composition. */
.travlink-luxury-showcase {
  position: relative;
  width: 100vw;
  min-height: 850px;
  margin-inline: calc(50% - 50vw);
  padding: 76px max(calc((100vw - 1500px) / 2), 6vw) 92px;
  overflow: hidden;
  background: linear-gradient(180deg, #fbf8f1 0%, #f6f7fa 100%);
}

.travlink-luxury-showcase__intro {
  position: relative;
  z-index: 2;
  width: 34%;
  max-width: 480px;
}

.travlink-luxury-showcase__intro .travlink-travel-eyebrow {
  color: #1557b0;
  font-size: 12px;
  letter-spacing: .3em;
}

.travlink-luxury-showcase__intro h3 {
  margin: 22px 0 0;
  color: #13213a;
  font: 500 clamp(58px, 5vw, 92px)/.95 "Cormorant Garamond", Georgia, serif;
  letter-spacing: -.035em;
  text-wrap: balance;
}

.travlink-luxury-showcase__intro p {
  max-width: 455px;
  margin: 30px 0 0 max(34px, 3.6vw);
  color: #37445a;
  font: 500 clamp(16px, 1.08vw, 20px)/1.45 Outfit, Inter, sans-serif;
}

.travlink-swipe-cue--luxury {
  top: 279px;
  left: 32.7%;
}

.travlink-luxury-showcase__cards {
  position: absolute;
  top: 150px;
  right: max(calc((100vw - 1500px) / 2), 4vw);
  left: 40%;
  display: flex;
  align-items: flex-start;
  gap: 24px;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scrollbar-width: none;
  scroll-snap-type: x mandatory;
  padding-bottom: 20px;
}

.travlink-luxury-showcase__cards::-webkit-scrollbar {
  display: none;
}

.travlink-luxury-card {
  width: clamp(250px, 16vw, 300px);
  flex: 0 0 auto;
  scroll-snap-align: start;
  color: #435069;
  transition: transform .45s cubic-bezier(.22, 1, .36, 1);
}

.travlink-luxury-card:nth-child(2),
.travlink-luxury-card:nth-child(3),
.travlink-luxury-card:nth-child(4) { margin-top: 18px; }
.travlink-luxury-card:nth-child(2) { margin-top: 44px; }

.travlink-luxury-card__number {
  display: block;
  margin-bottom: 18px;
  color: rgba(15, 35, 65, .22);
  font: 600 42px/1 "Cormorant Garamond", Georgia, serif;
  letter-spacing: -.02em;
  transition: color .35s ease;
}

.travlink-luxury-card figure {
  position: relative;
  height: clamp(360px, 23vw, 430px);
  margin: 0;
  overflow: hidden;
  border-radius: 16px;
  background: #dce4ea;
  box-shadow: 0 10px 28px rgba(24, 40, 67, .06);
  transition: box-shadow .45s ease;
}

.travlink-luxury-card img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(.88) contrast(1.02);
  transition: filter .55s ease, transform .7s cubic-bezier(.22, 1, .36, 1);
}

.travlink-luxury-card:nth-child(1) img { object-position: 57% 62%; }
.travlink-luxury-card:nth-child(2) img { object-position: 24% 40%; }
.travlink-luxury-card:nth-child(3) img { object-position: 47% 50%; }

.travlink-luxury-card h4 {
  max-width: 240px;
  margin: 24px 0 0;
  color: #25334b;
  font: 600 clamp(20px, 1.55vw, 27px)/1.08 Outfit, Inter, sans-serif;
  letter-spacing: -.025em;
  text-transform: uppercase;
  transition: color .35s ease;
}

.travlink-luxury-card.is-active .travlink-luxury-card__number,
.travlink-luxury-card.is-active h4 { color: #1557b0; }
.travlink-luxury-card.is-active figure { box-shadow: 0 20px 40px rgba(24, 40, 67, .14); }
.travlink-luxury-card.is-active img { filter: saturate(1) contrast(1.03); transform: scale(1.035); }

.travlink-luxury-showcase.is-reveal-ready [data-luxury-reveal] {
  opacity: 0;
  transform: translateY(26px);
  transition: opacity .75s ease, transform .85s cubic-bezier(.22, 1, .36, 1);
}

.travlink-luxury-showcase.is-visible [data-luxury-reveal] {
  opacity: 1;
  transform: translateY(0);
}

.travlink-luxury-showcase.is-visible .travlink-luxury-card:nth-child(1) { transition-delay: .15s; }
.travlink-luxury-showcase.is-visible .travlink-luxury-card:nth-child(2) { transition-delay: .3s; }
.travlink-luxury-showcase.is-visible .travlink-luxury-card:nth-child(3) { transition-delay: .45s; }

@media (hover: hover) and (min-width: 992px) {
  .travlink-luxury-card:is(:hover, :focus-visible) {
    outline: none;
    transform: translateY(-4px);
  }
  .travlink-luxury-card:is(:hover, :focus-visible) .travlink-luxury-card__number,
  .travlink-luxury-card:is(:hover, :focus-visible) h4 { color: #1557b0; }
  .travlink-luxury-card:is(:hover, :focus-visible) figure { box-shadow: 0 20px 40px rgba(24, 40, 67, .14); }
  .travlink-luxury-card:is(:hover, :focus-visible) img { filter: saturate(1) contrast(1.03); transform: scale(1.035); }
}

/* Ocean Experiences: staggered, open editorial sequence. */
.travlink-ocean-showcase {
  position: relative;
  width: 100vw;
  min-height: 920px;
  margin-inline: calc(50% - 50vw);
  padding: 78px max(calc((100vw - 1500px) / 2), 6vw) 100px;
  overflow: hidden;
  background: #f7eee4;
  isolation: isolate;
}

.travlink-ocean-showcase::before {
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    radial-gradient(circle at 70% 44%, rgba(21, 87, 176, .045) 0 2px, transparent 2.5px),
    repeating-radial-gradient(ellipse at 72% 45%, transparent 0 62px, rgba(21, 87, 176, .028) 63px 64px, transparent 65px 106px);
  background-size: 210px 180px, auto;
  content: "";
  opacity: .8;
  pointer-events: none;
}

.travlink-ocean-showcase::after {
  position: absolute;
  top: 27%;
  right: 5%;
  z-index: -1;
  width: 48%;
  height: 46%;
  border-top: 1px dashed rgba(21, 87, 176, .05);
  border-right: 1px dashed rgba(21, 87, 176, .05);
  border-radius: 50%;
  content: "";
  opacity: .7;
  pointer-events: none;
  transform: rotate(8deg);
  transition: opacity .45s ease, border-color .45s ease;
}

.travlink-ocean-showcase__intro {
  position: relative;
  z-index: 2;
  width: 40%;
  max-width: 650px;
}

.travlink-ocean-showcase__intro .travlink-travel-eyebrow {
  color: #1557b0;
  font-size: 12px;
  letter-spacing: .3em;
}

.travlink-ocean-showcase__intro h3 {
  margin: 10px 0 0;
  color: #12223a;
  font: 500 clamp(54px, 3.6vw, 66px)/.95 "Cormorant Garamond", Georgia, serif;
  letter-spacing: -.04em;
  text-wrap: balance;
  white-space: nowrap;
}

.travlink-ocean-showcase__intro p {
  max-width: 560px;
  margin: 38px 0 0 max(60px, 5.2vw);
  color: #182135;
  font: 500 clamp(17px, 1.1vw, 21px)/1.24 Outfit, Inter, sans-serif;
}

.travlink-ocean-showcase__cards {
  position: absolute;
  top: 315px;
  right: 0;
  bottom: auto;
  left: 32.7%;
  display: flex;
  align-items: flex-start;
  gap: clamp(38px, 3.75vw, 70px);
  padding-right: max(calc((100vw - 1500px) / 2), 4vw);
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scrollbar-width: none;
  scroll-snap-type: x mandatory;
}

.travlink-ocean-showcase__cards::-webkit-scrollbar { display: none; }

.travlink-ocean-card {
  position: relative;
  width: clamp(420px, 30vw, 560px);
  flex: 0 0 auto;
  scroll-snap-align: start;
  color: #40516b;
  transition: transform .45s cubic-bezier(.22, 1, .36, 1);
}

.travlink-ocean-card:nth-child(n) { top: auto; right: auto; left: auto; }

.travlink-ocean-card__number {
  display: block;
  margin-bottom: 12px;
  color: rgba(15, 35, 65, .2);
  font: 600 28px/1 "Cormorant Garamond", Georgia, serif;
  letter-spacing: -.02em;
  transition: color .35s ease;
}

.travlink-ocean-card figure {
  position: relative;
  height: clamp(280px, 20vw, 376px);
  margin: 0;
  overflow: hidden;
  border-radius: 16px;
  background: #dceaf0;
  box-shadow: 0 10px 28px rgba(18, 56, 91, .06);
  transition: box-shadow .45s ease;
}

.travlink-ocean-card img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(.88) contrast(1.02);
  transition: filter .55s ease, transform .7s cubic-bezier(.22, 1, .36, 1);
}

.travlink-ocean-card:nth-child(2) img { object-position: 72% 55%; }
.travlink-ocean-card:nth-child(3) img { object-position: 45% 78%; }
.travlink-ocean-card:nth-child(4) img { object-position: 28% 57%; }
.travlink-ocean-card:nth-child(5) img { object-position: 52% 54%; filter: saturate(.78) brightness(.86); }

.travlink-ocean-card h4 {
  max-width: 470px;
  margin: 38px 0 0;
  color: #1557b0;
  font: 600 clamp(27px, 1.85vw, 35px)/1.08 Outfit, Inter, sans-serif;
  letter-spacing: -.025em;
  transition: color .35s ease;
}

.travlink-ocean-card { opacity: .55; }
.travlink-ocean-card.is-active { opacity: 1; }
.travlink-ocean-card.is-active .travlink-ocean-card__number { color: #1557b0; }
.travlink-ocean-card.is-active figure { box-shadow: 0 20px 42px rgba(18, 56, 91, .14); }
.travlink-ocean-card.is-active img { filter: saturate(1) contrast(1.03); transform: scale(1.025); }

.travlink-ocean-showcase.is-reveal-ready [data-ocean-reveal] {
  opacity: 0;
  transform: translateY(26px);
  transition: opacity .75s ease, transform .85s cubic-bezier(.22, 1, .36, 1);
}

.travlink-ocean-showcase.is-visible [data-ocean-reveal] {
  opacity: 1;
  transform: translateY(0);
}

.travlink-ocean-showcase.is-visible .travlink-ocean-card:nth-child(1) { transition-delay: .14s; }
.travlink-ocean-showcase.is-visible .travlink-ocean-card:nth-child(2) { transition-delay: .28s; }
.travlink-ocean-showcase.is-visible .travlink-ocean-card:nth-child(3) { transition-delay: .42s; }
.travlink-ocean-showcase.is-visible .travlink-ocean-card:nth-child(4) { transition-delay: .56s; }
.travlink-ocean-showcase.is-visible .travlink-ocean-card:nth-child(5) { transition-delay: .7s; }

@media (hover: hover) and (min-width: 992px) {
  .travlink-ocean-card:is(:hover, :focus-visible) {
    z-index: 3;
    outline: none;
    transform: translateY(-4px);
  }
  .travlink-ocean-card:is(:hover, :focus-visible) .travlink-ocean-card__number,
  .travlink-ocean-card:is(:hover, :focus-visible) h4 { color: #1557b0; }
  .travlink-ocean-card:is(:hover, :focus-visible) figure { box-shadow: 0 20px 40px rgba(18, 56, 91, .14); }
  .travlink-ocean-card:is(:hover, :focus-visible) img { filter: saturate(1) contrast(1.03); transform: scale(1.035); }
  .travlink-ocean-showcase:has(.travlink-ocean-card:hover)::after { border-color: rgba(21, 87, 176, .09); opacity: 1; }
}

/* Adventure Experiences: full-width photographic story panel. */
.travlink-adventure-showcase {
  position: relative;
  display: flex;
  width: 100vw;
  min-height: clamp(650px, 47vw, 860px);
  margin-inline: calc(50% - 50vw);
  align-items: flex-end;
  overflow: hidden;
  background: #172131;
  isolation: isolate;
}

.travlink-adventure-showcase__background {
  position: absolute;
  inset: 0;
  z-index: -2;
  margin: 0;
  overflow: hidden;
}

.travlink-adventure-showcase__background img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 54%;
  transform: scale(1.01);
  transition: transform 1.2s cubic-bezier(.22, 1, .36, 1), filter .8s ease;
}

.travlink-adventure-showcase::after {
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    linear-gradient(90deg, rgba(4, 12, 24, .82) 0%, rgba(4, 12, 24, .48) 45%, rgba(4, 12, 24, .1) 76%),
    linear-gradient(0deg, rgba(4, 12, 24, .8) 0%, transparent 52%);
  content: "";
  pointer-events: none;
}

.travlink-adventure-showcase__content {
  position: relative;
  width: min(680px, 56vw);
  margin-left: max(calc((100vw - 1500px) / 2), 7vw);
  padding: 0 0 clamp(70px, 7vw, 112px);
  color: #fff;
}

.travlink-adventure-showcase__number {
  position: absolute;
  right: 0;
  bottom: calc(100% + 18px);
  color: rgba(255, 255, 255, .2);
  font: 500 58px/1 "Cormorant Garamond", Georgia, serif;
}

.travlink-adventure-showcase .travlink-travel-eyebrow {
  color: #80c8f4;
  font-size: 12px;
  letter-spacing: .3em;
}

.travlink-adventure-showcase__content h3 {
  max-width: 680px;
  margin: 20px 0 0;
  color: #fff;
  font: 500 clamp(58px, 5.4vw, 94px)/.92 "Cormorant Garamond", Georgia, serif;
  letter-spacing: -.04em;
  text-wrap: balance;
}

.travlink-adventure-showcase__content > p {
  max-width: 540px;
  margin: 28px 0 0;
  color: rgba(245, 249, 253, .8);
  font: 500 clamp(16px, 1.08vw, 20px)/1.5 Outfit, Inter, sans-serif;
}

.travlink-adventure-showcase__service {
  display: inline-flex;
  align-items: center;
  gap: 13px;
  min-width: 164px;
  margin-top: 34px;
  padding: 14px 22px;
  border: 1px solid rgba(255, 255, 255, .25);
  border-radius: 999px;
  background: rgba(8, 24, 43, .3);
  backdrop-filter: blur(8px);
}

.travlink-adventure-showcase__service i { color: #80c8f4; font-size: 17px; }
.travlink-adventure-showcase__service h4 { margin: 0; color: #fff; font: 600 15px/1 Outfit, Inter, sans-serif; }

@media (hover: hover) and (min-width: 992px) {
  .travlink-adventure-showcase:hover .travlink-adventure-showcase__background img {
    filter: saturate(1.05) contrast(1.03);
    transform: scale(1.035);
  }
}

.travlink-package-category {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, .92fr);
  min-height: 590px;
  overflow: hidden;
  border: 1px solid rgba(15, 23, 42, .09);
  border-radius: 28px;
  background: #f8fafc;
  box-shadow: 0 24px 70px rgba(15, 23, 42, .08);
}

.travlink-package-category--reverse {
  grid-template-columns: minmax(360px, .92fr) minmax(0, 1.08fr);
}

.travlink-package-category--reverse .travlink-package-category__media {
  order: 2;
}

.travlink-package-category__media {
  position: relative;
  min-height: 100%;
  margin: 0;
  overflow: hidden;
  background: #dce5ed;
}

.travlink-package-category__media::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(4, 15, 34, .02), rgba(4, 15, 34, .2));
  content: "";
  pointer-events: none;
  transition: opacity .6s cubic-bezier(.22, 1, .36, 1);
}

.travlink-package-category__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .9s cubic-bezier(.22, 1, .36, 1);
}

.travlink-package-category__content {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  padding: clamp(42px, 5vw, 72px);
}

.travlink-package-category__number {
  position: absolute;
  top: 28px;
  right: 32px;
  color: rgba(14, 71, 161, .16);
  font: 500 54px/1 "Cormorant Garamond", Georgia, serif;
}

.travlink-package-category__content > h3 {
  max-width: 480px;
  margin: 17px 0 0;
  color: #101827;
  font: 500 clamp(42px, 4vw, 58px)/.98 "Cormorant Garamond", Georgia, serif;
  letter-spacing: -.035em;
}

.travlink-package-category__content > p {
  max-width: 470px;
  margin: 19px 0 0;
  color: #667386;
  font: 400 15px/1.7 Outfit, Inter, sans-serif;
}

.travlink-travel-feature--packages .travlink-package-category__services {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 22px;
  margin-top: 30px;
  border-top: 1px solid rgba(15, 23, 42, .11);
}

.travlink-travel-feature--packages .travlink-package-category .travlink-package-item,
.travlink-travel-feature--packages .travlink-package-category .travlink-package-item:nth-child(odd) {
  display: flex;
  align-items: center;
  width: auto;
  min-width: 0;
  min-height: 66px;
  gap: 11px;
  margin: 0;
  padding: 13px 0;
  border: 0;
  border-bottom: 1px solid rgba(15, 23, 42, .11);
  background: transparent;
  transform: none;
}

.travlink-travel-feature--packages .travlink-package-category .travlink-package-item::after {
  right: auto;
  left: 0;
  background: #2f9fe6;
}

.travlink-travel-feature--packages .travlink-package-category .travlink-package-item i {
  flex: 0 0 22px;
  width: 22px;
  color: #0e47a1;
  font-size: 15px;
  transition: color .35s ease, transform .35s ease;
}

.travlink-travel-feature--packages .travlink-package-category .travlink-package-item h4 {
  margin: 0;
  color: #253044;
  font: 500 14px/1.4 Outfit, Inter, sans-serif;
  letter-spacing: -.01em;
  transition: color .35s ease;
}

.travlink-package-category--dark {
  border-color: rgba(255, 255, 255, .08);
  background: #09182d;
  box-shadow: 0 30px 82px rgba(4, 15, 34, .2);
}

.travlink-package-category--dark .travlink-package-category__number { color: rgba(117, 190, 240, .13); }
.travlink-package-category--dark .travlink-travel-eyebrow { color: #75bef0; }
.travlink-package-category--dark .travlink-package-category__content > h3 { color: #fff; }
.travlink-package-category--dark .travlink-package-category__content > p { color: rgba(231, 239, 248, .68); }
.travlink-travel-feature--packages .travlink-package-category--dark .travlink-package-category__services,
.travlink-travel-feature--packages .travlink-package-category--dark .travlink-package-item { border-color: rgba(255, 255, 255, .12); }
.travlink-travel-feature--packages .travlink-package-category--dark .travlink-package-item h4 { color: rgba(255, 255, 255, .88); }
.travlink-travel-feature--packages .travlink-package-category--dark .travlink-package-item i { color: #75bef0; }

.travlink-package-category--ocean { background: linear-gradient(145deg, #f5fbfd, #eff7fb); }
.travlink-package-category--adventure { background: linear-gradient(145deg, #f7f7f3, #f3f6f7); }

@media (hover: hover) and (min-width: 992px) {
  .travlink-package-category:hover .travlink-package-category__media img { transform: scale(1.04); }
  .travlink-package-category:hover .travlink-package-category__media::after { opacity: .58; }
  .travlink-travel-feature--packages .travlink-package-category .travlink-package-item:hover::after { width: 100%; }
  .travlink-travel-feature--packages .travlink-package-category .travlink-package-item:hover i { color: #2f9fe6; transform: translateY(-2px); }
  .travlink-travel-feature--packages .travlink-package-category .travlink-package-item:hover h4 { color: #0e47a1; }
  .travlink-travel-feature--packages .travlink-package-category--dark .travlink-package-item:hover h4 { color: #fff; }
}

@media (max-width: 991px) {
  .travlink-essential-showcase {
    min-height: 680px;
  }
  .travlink-essential-showcase__intro { left: 5vw; width: 44vw; padding-top: 46px; }
  .travlink-essential-showcase__intro h3 { font-size: clamp(48px, 6.4vw, 62px); }
  .travlink-essential-showcase__intro > p { margin-top: 26px; margin-left: 24px; font-size: 15px; }
  .travlink-essential-showcase__nav { margin-top: 28px; }
  .travlink-essential-showcase__viewport { top: 260px; left: 47%; }
  .travlink-essential-showcase__track { gap: 42px; padding: 0 60px 38px 24px; }
  .travlink-essential-card { width: 205px; min-height: 430px; }
  .travlink-essential-card figure { height: 275px; }

  .travlink-package-category,
  .travlink-package-category--reverse {
    grid-template-columns: 1fr;
    min-height: 0;
  }

  .travlink-package-category--reverse .travlink-package-category__media { order: 0; }
  .travlink-package-category__media { min-height: 390px; aspect-ratio: 16 / 10; }
  .travlink-package-category__content { padding: 48px; }
}

@media (max-width: 1399px) {
  .travlink-luxury-showcase {
    min-height: 0;
    padding: 68px 6vw 82px;
  }
  .travlink-luxury-showcase__intro { width: 100%; max-width: 620px; }
  .travlink-luxury-showcase__intro p { margin-left: 0; }
  .travlink-luxury-showcase__cards {
    position: relative;
    top: auto;
    right: auto;
    left: auto;
    width: calc(100% + 6vw);
    margin-top: 54px;
    padding-right: 6vw;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scrollbar-width: none;
    scroll-snap-type: x mandatory;
  }
  .travlink-luxury-showcase__cards::-webkit-scrollbar { display: none; }
  .travlink-luxury-card { scroll-snap-align: start; }
  .travlink-luxury-card:nth-child(2),
  .travlink-luxury-card:nth-child(3) { margin-top: 24px; }

  .travlink-ocean-showcase {
    min-height: 0;
    padding: 68px 6vw 82px;
  }
  .travlink-ocean-showcase__intro { width: 100%; max-width: 640px; }
  .travlink-ocean-showcase__intro h3 { white-space: normal; }
  .travlink-ocean-showcase__intro p { margin-left: 0; }
  .travlink-swipe-cue--luxury,
  .travlink-swipe-cue--ocean {
    position: relative;
    top: auto;
    left: auto;
    margin-top: 34px;
  }
  .travlink-ocean-showcase__cards {
    position: relative;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
    display: flex;
    width: calc(100% + 6vw);
    gap: 24px;
    margin-top: 18px;
    padding-right: 6vw;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scrollbar-width: none;
    scroll-snap-type: x mandatory;
  }
  .travlink-ocean-showcase__cards::-webkit-scrollbar { display: none; }
  .travlink-ocean-card,
  .travlink-ocean-card:nth-child(n) {
    position: relative;
    top: auto;
    right: auto;
    left: auto;
    flex: 0 0 auto;
    width: clamp(340px, 52vw, 520px);
    scroll-snap-align: start;
  }
}

@media (max-width: 767px) {
  .travlink-packages-editorial__intro > p { font-size: 14px; line-height: 1.65; }
  .travlink-package-categories { gap: 0; margin-top: 0; }
  .travlink-essential-showcase {
    min-height: 0;
  }
  .travlink-essential-showcase__intro {
    position: relative;
    left: auto;
    width: auto;
    padding: 44px 24px 20px;
    background: linear-gradient(180deg, rgba(5, 14, 25, .9), rgba(5, 14, 25, .2));
  }
  .travlink-essential-showcase__eyebrow { font-size: 10px; }
  .travlink-essential-showcase__intro h3 {
    max-width: 390px;
    margin-top: 14px;
    padding-right: 18px;
    font-size: clamp(46px, 14vw, 62px);
  }
  .travlink-essential-showcase__intro > p {
    max-width: 420px;
    margin: 22px 0 0;
    font-size: 15px;
    line-height: 1.45;
  }
  .travlink-essential-showcase__nav { display: none; }
  .travlink-essential-showcase__progress {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 27px;
    color: rgba(222, 235, 246, .58);
    font: 600 10px/1 Outfit, Inter, sans-serif;
    letter-spacing: .14em;
    text-transform: uppercase;
  }
  .travlink-essential-showcase__progress strong { color: #ff4e29; font-size: 12px; }
  .travlink-swipe-cue--essential {
    position: relative;
    top: auto;
    left: auto;
    margin: 0 24px 8px;
  }
  .travlink-essential-showcase__viewport {
    position: relative;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
    scroll-padding-inline: 18px;
  }
  .travlink-essential-showcase__track {
    min-height: 0;
    gap: 14px;
    padding: 12px 18px 42px;
  }
  .travlink-essential-card {
    width: min(78vw, 305px);
    min-height: 410px;
    opacity: .58;
  }
  .travlink-essential-card__number { margin-bottom: 15px; font-size: 17px; }
  .travlink-essential-card figure { height: 282px; border-radius: 15px; }
  .travlink-essential-card h4 { margin-top: 18px; font-size: 27px; }
  .travlink-essential-card:is(:hover, :focus-visible, .is-active) { transform: scale(1); }
  .travlink-luxury-showcase { padding: 52px 24px 62px; }
  .travlink-luxury-showcase__intro .travlink-travel-eyebrow { font-size: 10px; }
  .travlink-luxury-showcase__intro h3 { margin-top: 16px; font-size: clamp(48px, 15vw, 66px); }
  .travlink-luxury-showcase__intro p { margin-top: 22px; font-size: 15px; }
  .travlink-luxury-showcase__cards {
    width: calc(100% + 24px);
    gap: 16px;
    margin-top: 40px;
    padding-right: 24px;
  }
  .travlink-luxury-card {
    width: min(78vw, 280px);
    scroll-snap-align: center;
  }
  .travlink-luxury-card:nth-child(2),
  .travlink-luxury-card:nth-child(3) { margin-top: 0; }
  .travlink-luxury-card__number { margin-bottom: 14px; font-size: 28px; }
  .travlink-luxury-card figure { height: 330px; }
  .travlink-luxury-card h4 { margin-top: 18px; font-size: 21px; }
  .travlink-ocean-showcase { padding: 52px 24px 62px; }
  .travlink-ocean-showcase__intro .travlink-travel-eyebrow { font-size: 10px; }
  .travlink-ocean-showcase__intro h3 { margin-top: 16px; font-size: clamp(48px, 15vw, 66px); }
  .travlink-ocean-showcase__intro p { margin-top: 22px; font-size: 15px; }
  .travlink-swipe-cue--luxury,
  .travlink-swipe-cue--ocean { margin-top: 28px; }
  .travlink-ocean-showcase__cards {
    width: calc(100% + 24px);
    gap: 16px;
    margin-top: 12px;
    padding-right: 24px;
  }
  .travlink-ocean-card,
  .travlink-ocean-card:nth-child(n) {
    width: min(78vw, 280px);
    scroll-snap-align: start;
  }
  .travlink-ocean-card__number { margin-bottom: 14px; font-size: 36px; }
  .travlink-ocean-card figure { height: 330px; }
  .travlink-ocean-card h4 { margin-top: 18px; font-size: 21px; }
  .travlink-adventure-showcase { min-height: 620px; }
  .travlink-adventure-showcase__background img { object-position: 61% center; }
  .travlink-adventure-showcase::after {
    background: linear-gradient(0deg, rgba(4, 12, 24, .92) 0%, rgba(4, 12, 24, .48) 64%, rgba(4, 12, 24, .12) 100%);
  }
  .travlink-adventure-showcase__content {
    width: auto;
    margin: 0;
    padding: 0 24px 52px;
  }
  .travlink-adventure-showcase__number { right: 24px; bottom: calc(100% + 10px); font-size: 46px; }
  .travlink-adventure-showcase .travlink-travel-eyebrow { font-size: 10px; }
  .travlink-adventure-showcase__content h3 { margin-top: 15px; font-size: clamp(50px, 15vw, 68px); }
  .travlink-adventure-showcase__content > p { margin-top: 20px; font-size: 15px; line-height: 1.5; }
  .travlink-adventure-showcase__service { margin-top: 26px; padding: 12px 18px; }
  .travlink-package-category { border-radius: 20px; box-shadow: 0 18px 46px rgba(15, 23, 42, .09); }
  .travlink-package-category__media { min-height: 250px; aspect-ratio: 16 / 11; }
  .travlink-package-category__content { padding: 36px 24px 32px; }
  .travlink-package-category__number { top: 24px; right: 24px; font-size: 43px; }
  .travlink-package-category__content > h3 { max-width: 82%; font-size: clamp(38px, 11vw, 48px); }
  .travlink-package-category__content > p { margin-top: 15px; font-size: 14px; }
  .travlink-travel-feature--packages .travlink-package-category__services { grid-template-columns: 1fr; margin-top: 24px; }
  .travlink-travel-feature--packages .travlink-package-category .travlink-package-item,
  .travlink-travel-feature--packages .travlink-package-category .travlink-package-item:nth-child(odd) { min-height: 59px !important; padding: 11px 0; }
  .travlink-travel-feature--packages .travlink-package-category .travlink-package-item h4 { font-size: 14px; }
}

@media (prefers-reduced-motion: reduce) {
  .travlink-essential-showcase::before { animation: none; }
  .travlink-swipe-cue i { animation: none; }
  .travlink-essential-showcase__viewport { scroll-behavior: auto; }
  .travlink-essential-card,
  .travlink-essential-card img,
  .travlink-essential-card figure,
  .travlink-essential-card h4 { transition: none; }
  .travlink-package-category__media img,
  .travlink-package-category__media::after,
  .travlink-package-item i { transition: none; }
  .travlink-luxury-showcase [data-luxury-reveal],
  .travlink-luxury-card,
  .travlink-luxury-card img { transition: none; }
  .travlink-ocean-showcase [data-ocean-reveal],
  .travlink-ocean-card,
  .travlink-ocean-card img,
  .travlink-ocean-showcase::after { transition: none; }
}

/* Essential Travel uses a single white type palette against its dark canvas. */
.travlink-essential-showcase .travlink-essential-showcase__eyebrow,
.travlink-essential-showcase .travlink-essential-showcase__intro h3,
.travlink-essential-showcase .travlink-essential-showcase__intro > p,
.travlink-essential-showcase .travlink-essential-showcase__nav button,
.travlink-essential-showcase .travlink-essential-showcase__nav button span,
.travlink-essential-showcase .travlink-essential-showcase__progress,
.travlink-essential-showcase .travlink-essential-showcase__progress strong,
.travlink-essential-showcase .travlink-essential-card__number,
.travlink-essential-showcase .travlink-essential-card h4,
.travlink-essential-showcase .travlink-swipe-cue {
  color: #fff;
}

/* Never leave a Travel section showing only its background while observers settle. */
.travlink-travel-page .travlink-scroll-section,
.travlink-travel-page .travlink-scroll-item,
.travlink-travel-page .travlink-luxury-showcase.is-reveal-ready [data-luxury-reveal],
.travlink-travel-page .travlink-ocean-showcase.is-reveal-ready [data-ocean-reveal],
.travlink-travel-page .travlink-country-showcase.is-enhanced .travlink-destination-tile {
  opacity: 1;
}

.travlink-travel-page .travlink-scroll-section {
  transform: none;
  transition: none;
  will-change: auto;
}

.travlink-travel-page .travlink-essential-showcase::before {
  animation: none;
}

.travlink-travel-page .travlink-ocean-showcase::after,
.travlink-travel-page .travlink-adventure-showcase__background img {
  transition: none;
}

.travlink-travel-page .travlink-adventure-showcase:hover .travlink-adventure-showcase__background img {
  filter: none;
  transform: scale(1.01);
}

/* Join adjacent Travel content without background-only spacer bands. */
.travlink-travel-page .travlink-travel-selector { padding-bottom: 0; }
.travlink-travel-page .travlink-travel-features { padding-top: 0; padding-bottom: 0; }
.travlink-travel-page .travlink-travel-feature + .travlink-travel-feature { margin-top: 0; }
.travlink-travel-page .travlink-travel-feature--visa { padding-top: clamp(56px, 6vw, 88px); }
.travlink-travel-page .travlink-travel-support { padding-top: 0; }

/* Mobile compositions based on the supplied Essential and Luxury references. */
@media (max-width: 767px) {
  .travlink-essential-showcase__intro {
    padding: 38px 14px 18px;
    background: transparent;
  }

  .travlink-essential-showcase__intro h3 {
    max-width: 330px;
    margin-top: 12px;
    padding: 0;
    font-size: clamp(38px, 11vw, 48px);
    line-height: .98;
  }

  .travlink-essential-showcase__intro > p {
    max-width: 310px;
    margin-top: 24px;
    font-size: 13px;
    line-height: 1.32;
  }

  .travlink-essential-showcase__progress { display: none; }

  .travlink-swipe-cue--essential {
    justify-content: flex-end;
    margin: 4px 18px 10px auto;
  }

  .travlink-essential-showcase__viewport {
    scroll-padding-inline: 34px;
  }

  .travlink-essential-showcase__track {
    gap: clamp(42px, 13vw, 58px);
    padding: 8px 34px 52px;
  }

  .travlink-essential-card {
    width: clamp(118px, 31vw, 145px);
    min-height: 310px;
    opacity: 1;
    transform: none;
  }

  .travlink-essential-card__number {
    margin-bottom: 20px;
    font-size: 14px;
  }

  .travlink-essential-card figure {
    width: 100%;
    height: clamp(150px, 39vw, 182px);
    border-radius: 14px;
  }

  .travlink-essential-card h4 {
    margin-top: 20px;
    font-size: clamp(14px, 3.8vw, 17px);
    line-height: 1.25;
    text-transform: uppercase;
  }

  .travlink-essential-card:is(:hover, :focus-visible, .is-active) {
    opacity: 1;
    transform: none;
  }

  .travlink-luxury-showcase {
    padding: 48px 0 62px;
  }

  .travlink-luxury-showcase__intro {
    max-width: none;
    padding-inline: 18px;
  }

  .travlink-luxury-showcase__intro h3 {
    max-width: 340px;
    margin-top: 12px;
    font-size: clamp(40px, 12vw, 52px);
    line-height: .96;
  }

  .travlink-luxury-showcase__intro p {
    max-width: 315px;
    margin-top: 24px;
    font-size: 13px;
    line-height: 1.38;
  }

  .travlink-showcase-service-nav--luxury { display: none; }

  .travlink-luxury-showcase__cards {
    width: 100%;
    min-height: 390px;
    align-items: flex-start;
    gap: clamp(42px, 12vw, 58px);
    margin-top: 28px;
    padding: 0 34px 24px;
    scroll-padding-inline: 34px;
  }

  .travlink-luxury-card {
    width: clamp(132px, 38vw, 168px);
    opacity: 1;
    scroll-snap-align: center;
  }

  .travlink-luxury-card:nth-child(odd) { margin-top: 58px; }
  .travlink-luxury-card:nth-child(even) { margin-top: 0; }
  .travlink-luxury-card__number { display: none; }

  .travlink-luxury-card figure {
    height: clamp(178px, 47vw, 208px);
    border-radius: 14px;
  }

  .travlink-luxury-card h4 {
    margin-top: 20px;
    font-size: clamp(14px, 3.8vw, 17px);
    line-height: 1.28;
  }
}

/* Travel finishing details: single-line Adventure title and stable country labels. */
.travlink-adventure-showcase__content {
  width: min(900px, 86vw);
}

.travlink-adventure-showcase__content h3 {
  max-width: none;
  font-size: clamp(52px, 5vw, 80px);
  white-space: nowrap;
  text-wrap: nowrap;
}

.travlink-destination-tile--image > span {
  opacity: 1;
  pointer-events: none;
  text-shadow: 0 1px 8px rgba(4, 14, 27, .45);
  transform: none;
}

.travlink-destination-tile--image > span::after {
  transform: scaleX(1);
}

.travlink-destination-tile--more {
  align-items: center;
  justify-content: center;
  text-align: center;
}

.travlink-destination-tile--more .travlink-destination-tile__kicker {
  margin-bottom: 12px;
}

.travlink-destination-tile--more h4 {
  max-width: 250px;
  margin: 0 0 16px;
}

@media (max-width: 767px) {
  .travlink-adventure-showcase__content {
    width: auto;
  }

  .travlink-adventure-showcase__content h3 {
    font-size: clamp(27px, 8vw, 36px);
    letter-spacing: -.025em;
  }
}

/* Consistent desktop and tablet spacing without separating the shared canvas. */
@media (min-width: 768px) {
  .travlink-travel-page .travlink-travel-selector {
    padding: 76px 0 58px;
  }

  .travlink-travel-selector__header {
    margin-bottom: 42px;
  }

  .travlink-travel-selector__header h2 {
    margin-top: 18px;
    line-height: 1.06;
  }

  .travlink-travel-selector__header p {
    margin-top: 20px;
  }

  .travlink-travel-page .travlink-travel-features {
    padding: 58px 0 0;
  }

  .travlink-packages-editorial__intro {
    padding-bottom: 62px;
  }

  .travlink-travel-feature--packages .travlink-packages-editorial__intro h2 {
    margin-top: 18px;
    line-height: 1.06;
  }

  .travlink-packages-editorial__intro > p {
    margin-top: 22px;
  }

  .travlink-travel-page .travlink-travel-feature--visa {
    padding-top: clamp(76px, 7vw, 104px);
    padding-bottom: 0;
  }

  .travlink-travel-feature--visa > .travlink-travel-feature__content > h2 {
    margin-top: 18px;
    line-height: 1.08;
  }

  .travlink-travel-feature .travlink-visa__types {
    margin-top: 42px;
  }

  .travlink-country-showcase {
    margin-top: clamp(64px, 7vw, 94px);
    padding-top: clamp(38px, 4vw, 54px);
  }

  .travlink-travel-page .travlink-travel-support {
    padding: clamp(76px, 7vw, 104px) 0 90px;
  }

  .travlink-travel-contact h2,
  .travlink-travel-faq__heading h2 {
    margin-top: 18px;
    line-height: 1.08;
  }

  .travlink-travel-support .travlink-travel-faq__heading {
    margin-bottom: 42px;
  }
}

/* Consistent mobile breathing room for every Travel section and heading. */
@media (max-width: 767px) {
  .travlink-travel-page .travlink-travel-selector {
    padding: 54px 0 58px;
  }

  .travlink-travel-selector__header {
    max-width: 340px;
    margin-bottom: 34px;
    padding-inline: 10px;
  }

  .travlink-travel-selector__header h2 {
    margin-top: 14px;
    font-size: clamp(34px, 9.5vw, 42px);
    line-height: 1.06;
  }

  .travlink-travel-selector__header p {
    max-width: 300px;
    margin-top: 18px;
    line-height: 1.55;
  }

  .travlink-travel-page .travlink-travel-features {
    padding: 58px 0 0;
  }

  .travlink-packages-editorial__intro {
    max-width: 350px;
    padding: 0 18px 46px;
  }

  .travlink-travel-feature--packages .travlink-packages-editorial__intro h2 {
    margin-top: 14px;
    font-size: clamp(34px, 9.5vw, 44px);
    line-height: 1.06;
  }

  .travlink-packages-editorial__intro > p {
    max-width: 310px;
    margin-top: 20px;
    line-height: 1.55;
  }

  .travlink-essential-showcase__intro,
  .travlink-luxury-showcase__intro,
  .travlink-ocean-showcase__intro {
    padding-right: 18px;
    padding-left: 18px;
  }

  .travlink-essential-showcase__intro { padding-top: 48px; }
  .travlink-luxury-showcase { padding-top: 58px; }
  .travlink-ocean-showcase { padding: 58px 0 68px; }

  .travlink-ocean-showcase__intro h3 {
    margin-top: 14px;
    font-size: clamp(40px, 11vw, 50px);
    line-height: 1;
  }

  .travlink-ocean-showcase__intro p {
    max-width: 315px;
    margin-top: 22px;
    font-size: 14px;
    line-height: 1.5;
  }

  .travlink-adventure-showcase__content {
    padding-right: 24px;
    padding-bottom: 64px;
    padding-left: 24px;
  }

  .travlink-adventure-showcase__content h3 {
    margin-top: 14px;
    font-size: clamp(40px, 11vw, 50px);
    line-height: 1;
  }

  .travlink-adventure-showcase__content > p {
    max-width: 315px;
    margin-top: 22px;
    line-height: 1.5;
  }

  .travlink-travel-page .travlink-travel-feature--visa {
    padding-top: 64px;
    padding-bottom: 68px;
  }

  .travlink-travel-feature--visa > .travlink-travel-feature__content > h2 {
    max-width: 340px;
    margin-top: 14px;
    font-size: clamp(34px, 9.5vw, 44px);
    line-height: 1.06;
  }

  .travlink-travel-feature .travlink-visa__types {
    margin-top: 34px;
  }

  .travlink-country-showcase {
    margin-top: 52px;
    padding-top: 38px;
  }

  .travlink-country-showcase > h3 {
    margin-bottom: 32px;
    font-size: clamp(32px, 8.8vw, 40px);
    line-height: 1.08;
  }

  .travlink-travel-page .travlink-travel-support {
    padding: 64px 0 72px;
  }

  .travlink-travel-support__grid { gap: 52px; }

  .travlink-travel-contact,
  .travlink-travel-faq {
    padding: 30px 24px;
  }

  .travlink-travel-contact h2,
  .travlink-travel-faq__heading h2 {
    margin-top: 14px;
    font-size: clamp(31px, 8.5vw, 39px);
    line-height: 1.08;
  }

  .travlink-travel-support .travlink-travel-faq__heading {
    margin-bottom: 32px;
  }
}

@media (max-width: 767px) {
  .travlink-adventure-showcase__content h3 {
    font-size: clamp(27px, 8vw, 36px);
    letter-spacing: -.025em;
    white-space: nowrap;
    text-wrap: nowrap;
  }
}

/* Adventure story content sits vertically centered on the left. */
.travlink-adventure-showcase {
  align-items: center;
  justify-content: flex-start;
}

.travlink-adventure-showcase__content {
  margin-right: 0;
  margin-left: max(calc((100vw - 1500px) / 2), 7vw);
  padding-top: 0;
  padding-bottom: 0;
  text-align: left;
}

@media (max-width: 767px) {
  .travlink-adventure-showcase__content {
    width: 100%;
    margin: 0;
    padding: 0 24px;
  }
}
