/**
 * Appel final d'une fiche circuit, et barre d'action des téléphones.
 */

.tc-trip-cta {
  padding-block: 84px 92px;
  background: linear-gradient(135deg, var(--tc-accent) 0%, #0E4A3C 100%);
  color: #FFFFFF;
  text-align: center;
}

.tc-trip-cta__inner {
  max-width: var(--tc-max-width);
  margin-inline: auto;
  padding-inline: var(--tc-gutter);
}

.tc-trip-cta__title {
  max-width: 20ch;
  margin: 0 auto 14px;
  font-family: var(--tc-serif);
  font-size: clamp(28px, 3.4vw, 44px);
  font-weight: 700;
  line-height: 1.1;
  text-wrap: balance;
}

.tc-trip-cta__text {
  max-width: 54ch;
  margin: 0 auto 28px;
  font-size: 17px;
  line-height: 1.6;
  color: rgba(255, 255, 255, .8);
}

.tc-trip-cta__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 14px;
}

.tc-trip-mobile-bar {
  display: none;
}

@media (max-width: 700px) {
  /* Fixée en bas : sur un téléphone, l'action ne doit jamais être à six
     écrans de distance. La page se réserve la place, sinon la barre
     recouvrirait son dernier paragraphe. */
  .tc-trip-mobile-bar {
    position: fixed;
    inset: auto 0 0;
    z-index: 40;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 12px 20px calc(12px + env(safe-area-inset-bottom, 0px));
    border-top: 1px solid var(--tc-border);
    background: var(--tc-surface);
    box-shadow: 0 -8px 24px rgba(0, 0, 0, .08);
  }

  .tc-trip-mobile-bar__price {
    margin: 0;
    font-size: var(--tc-fs-xs);
    color: var(--tc-ink-soft);
  }

  .tc-trip-mobile-bar__price strong {
    display: block;
    font-family: var(--tc-serif);
    font-size: var(--tc-fs-xl);
    color: var(--tc-accent);
  }

  body:has(.tc-trip-mobile-bar) {
    padding-bottom: 78px;
  }

  /* L'onglet du consentement aux cookies se pose en bas à gauche, là où la
     barre affiche le prix : il monte au-dessus d'elle. */
  body:has(.tc-trip-mobile-bar) #sliding-popup .eu-cookie-withdraw-tab {
    transform: translateY(calc(-100% - var(--tc-space-4) - 78px));
  }

  body:has(.tc-trip-mobile-bar) #sliding-popup .eu-cookie-withdraw-tab:hover,
  body:has(.tc-trip-mobile-bar) #sliding-popup .eu-cookie-withdraw-tab:focus-visible {
    transform: translateY(calc(-100% - var(--tc-space-4) - 78px)) scale(1.06);
  }
}
