/* ==========================================================================
   Transfer pages (airports / train-stations / sea-ports / long-distance-transfers)
   One shared layout; identical copies are published as pages/<slug>.css.
   ========================================================================== */

.page-transfer .tr-split .tr-mobile-only { display: none; }

/* ---------- Shared bits ---------- */
.page-transfer .tr-section-title {
  font-size: 30px; line-height: 30px; font-weight: 400; text-transform: uppercase;
  color: var(--text); text-align: center;
}
.page-transfer .tr-pill {
  align-self: flex-start;
  padding: 10px 20px; border-radius: 100px;
  background-color: #9370DB;
  font-size: 14px; line-height: 20px; font-weight: 400; text-transform: capitalize;
}
.page-transfer .tr-pill:hover,
.page-transfer .tr-pill:focus-visible { background-color: #9370DB; }

/* ---------- Hero ---------- */
.page-transfer .tr-hero { background-color: #FBF5E4; padding-bottom: 5%; }
.page-transfer .tr-hero__inner {
  display: flex; flex-direction: column; align-items: center; gap: 20px;
  max-width: var(--boxed); margin: 0 auto; text-align: center;
}
.page-transfer .tr-hero__img {
  position: relative; z-index: 1; display: block;
  width: 800px; max-width: 100%; height: auto;
  margin-bottom: -5.5%;
}
.page-transfer .tr-hero__title {
  margin-top: 122px; width: 100%;
  font-size: 36px; line-height: 36px; font-weight: 600; text-transform: uppercase; color: #2A388F;
}
.page-transfer .tr-hero__title span { color: #BE1E2D; font-weight: 700; }
.page-transfer .tr-hero__lead { margin: 0; width: 100%; font-size: 20px; line-height: 22px; font-weight: 500; color: #333; }
.page-transfer .tr-hero__actions {
  position: relative; z-index: 3;
  display: flex; flex-wrap: wrap; justify-content: center; gap: 22px; width: 100%;
}
.page-transfer .tr-hero__btn {
  display: block; width: 28%;
  padding: 15.95px 19.14px;
  font-size: 18px; line-height: 24px; font-weight: 700; text-transform: uppercase;
}
.page-transfer .tr-hero__btn--quote { background-color: #C9302C; }
.page-transfer .tr-hero__btn--quote:hover,
.page-transfer .tr-hero__btn--quote:focus-visible { background-color: #D9534F; }
.page-transfer .tr-hero__btn--contact { background-color: #EC9720; }
.page-transfer .tr-hero__btn--contact:hover,
.page-transfer .tr-hero__btn--contact:focus-visible { background-color: #F0AD4E; }

/* ---------- Fares + price cards ---------- */
.page-transfer .tr-fares { background-color: #B0E0E5; padding: 5% 0; }
.page-transfer .tr-fares__inner {
  display: flex; flex-direction: column; gap: 20px;
  max-width: 1200px; margin: 0 auto; text-align: center;
}
.page-transfer .tr-fares__lead { margin: 0; font-size: 20px; line-height: 20px; color: var(--text); }
.page-transfer .tr-cards {
  display: flex; gap: 20px;
  width: 100%; max-width: 1160px; margin: 70px auto 0; padding: 10px;
}
.page-transfer .tr-card {
  flex: 1 1 0; min-width: 0;
  display: flex; flex-direction: column; gap: 5px;
  padding: 10px 10px 29px; background-color: #fff; border-radius: 10px;
  text-align: center;
}
.page-transfer .tr-card__img { display: block; width: 160px; max-width: 100%; height: auto; margin: 0 auto; }
.page-transfer .tr-card h2,
.page-transfer .tr-card h3 { color: #333; }
.page-transfer .tr-card__place { font-size: 24px; line-height: 26px; font-weight: 500; }
.page-transfer .tr-card__type { font-size: 16px; line-height: 16px; font-weight: 500; }
.page-transfer .tr-card .tr-card__price { font-size: 70px; line-height: 70px; font-weight: 400; color: #DB7093; }
.page-transfer .tr-card__divider { margin: 15px 0; height: 0; border: 0; border-top: 1px solid rgba(0, 0, 0, .17); }
.page-transfer .tr-card__stars { display: flex; justify-content: center; align-items: center; height: 22px; color: #E7CC11; }
.page-transfer .tr-card__stars svg.icon { width: 16px; height: 16px; }
.page-transfer .tr-card__rating { margin-top: 1px; font-size: 16px; line-height: 16px; font-weight: 600; }
.page-transfer .tr-card__reviews { font-size: 14px; line-height: 16px; font-weight: 400; }
.page-transfer .tr-card__desc { margin-top: 34px; font-size: 14px; line-height: 16px; font-weight: 400; }
.page-transfer .tr-card__btn {
  align-self: center; margin-top: 20px;
  padding: 15px 30px; background-color: #C9302C;
  font-size: 14px; line-height: 20px; font-weight: 500; text-transform: capitalize;
}
.page-transfer .tr-card__btn:hover,
.page-transfer .tr-card__btn:focus-visible { background-color: #D9534F; }
.page-transfer .tr-fares__note { margin: 2% 0 0; font-size: 12px; line-height: 16.8px; color: var(--text); }

/* ---------- Feature columns ---------- */
.page-transfer .tr-features {
  display: flex; flex-direction: column; align-items: center; gap: 10px;
  background-color: #FBF5E4; padding: 5% 0;
}
.page-transfer .tr-features__row {
  display: flex; align-items: flex-start; gap: 20px;
  width: 100%; max-width: var(--boxed); margin-top: 40px; padding: 10px;
}
.page-transfer .tr-feature { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; gap: 20px; padding: 10px; }
.page-transfer .tr-feature__img { display: block; width: 300px; max-width: 100%; height: auto; margin: 0 auto; }
.page-transfer .tr-feature__title { font-size: 24px; line-height: 26px; font-weight: 500; color: var(--text); }
.page-transfer .tr-feature__text { margin: 0; font-size: 16px; line-height: 16px; color: var(--muted); }
.page-transfer .tr-feature__list { list-style: none; font-size: 14px; line-height: 20px; color: #333; }
.page-transfer .tr-feature__list li { padding-bottom: 3px; }
.page-transfer .tr-feature__list li + li { margin-top: 3px; }
.page-transfer .tr-feature__list li:last-child { padding-bottom: 0; }

/* ---------- Two-column split sections ---------- */
.page-transfer .tr-split { padding: 5% 0; }
.page-transfer .tr-split--green { background-color: #8FBC8F; }
.page-transfer .tr-split--faq { background-color: #FBF5E4; }
.page-transfer .tr-split--dark { background-color: #0E415F; }
.page-transfer .tr-split__inner { display: flex; align-items: center; max-width: var(--boxed); margin: 0 auto; }
.page-transfer .tr-split__col { width: 50%; min-width: 0; display: flex; flex-direction: column; padding: 10px; }
.page-transfer .tr-split__col--content { gap: 10px; }
.page-transfer .tr-split__col--media { gap: 20px; align-items: center; }
.page-transfer .tr-split__title { font-size: 30px; line-height: 30px; font-weight: 400; text-transform: uppercase; color: var(--text); }
.page-transfer .tr-split--dark .tr-split__title { color: #fff; }
.page-transfer .tr-split__lead { margin: 0; font-size: 21px; line-height: 29px; color: var(--text); }
.page-transfer .tr-split__sub { margin: 0; font-size: 20px; line-height: 20px; color: var(--muted); }
.page-transfer .tr-split__img { display: block; width: 400px; max-width: 100%; height: auto; margin: 0 auto; }
.page-transfer .tr-split__faq-img { display: block; width: 400px; max-width: 100%; height: auto; margin: 0 auto; }
.page-transfer .tr-split__wide-img { display: block; width: 100%; max-width: 600px; height: auto; margin: 0 auto; }
.page-transfer .tr-split__text { font-size: 14px; line-height: 20px; color: var(--text); }
.page-transfer .tr-split__text p { margin: 14px 0; }
.page-transfer .tr-split__text p + p { margin-top: 48px; }
.page-transfer .tr-split__text--gap { margin-top: 20px; }
.page-transfer .tr-split .tr-pill { margin-top: 20px; }
.page-transfer .tr-split--dark .tr-split__text { line-height: 19.6px; color: #fff; }
.page-transfer .tr-split__text--intro { margin-top: 30px; padding-bottom: 33.6px; }

/* ---------- FAQ accordion (overrides of the shared component) ---------- */
.page-transfer .tr-faq { margin-top: 30px; }
.page-transfer .tr-faq .accordion__btn { padding: 15px 20px; font-size: 16px; line-height: 18px; font-weight: 500; }
.page-transfer .tr-faq .accordion__body { padding: 15px 20px; font-size: 14px; line-height: 20px; }
.page-transfer .tr-faq .accordion__body p { margin: 14px 0; }
.page-transfer .tr-faq .accordion__body p + p { margin-top: 48px; }

/* ---------- Tablet ---------- */
@media (max-width: 1024px) {
  .page-transfer .tr-hero__btn { padding: 14.33px 17.2px; }
  .page-transfer .tr-card .tr-card__price { font-size: 50px; line-height: 50px; }
}

/* ---------- Mobile ---------- */
@media (max-width: 767px) {
  .page-transfer .tr-split .tr-mobile-only { display: block; }
  .page-transfer .tr-split .tr-desktop-only { display: none; }

  .page-transfer .tr-hero__btn { padding: 5.45px 6.55px; }

  .page-transfer .tr-fares { padding: 10% 0; }
  .page-transfer .tr-cards { flex-direction: column; padding: 0 5%; }
  .page-transfer .tr-card { flex: 0 0 auto; }

  .page-transfer .tr-features { padding: 10% 0; }
  .page-transfer .tr-features__row { flex-direction: column; }
  .page-transfer .tr-feature { width: 100%; flex: 0 0 auto; }

  .page-transfer .tr-split { padding: 10% 0; }
  .page-transfer .tr-split__inner { flex-direction: column; }
  .page-transfer .tr-split__col { width: 100%; }
  .page-transfer .tr-split__lead { font-size: 16px; line-height: 22px; }
  .page-transfer .tr-split__col--content > .tr-split__img { width: 100%; margin-top: 20px; }
  .page-transfer .tr-split__col--content > .tr-split__faq-img { width: 100%; margin-top: 30px; }
  .page-transfer .tr-split__col--content > .tr-split__wide-img { max-width: 100%; }

  .page-transfer .tr-faq .accordion__btn { padding: 12px 15px; }
  .page-transfer .tr-faq .accordion__body { padding: 7px 15px; }
}
