/* Z06: Phones only, the booking bar fixed to the bottom (js/sticky-cta.js). A glass strip on the fire gradient,
   a white pill inside (the hero's own button language), and a smaller glass "Free guide" button next to it. Out of the tab order while it is off screen. */
.sticky-cta { display: none; }
@media (max-width: 768px) {
  .sticky-cta {
    --sticky-pad: .625rem;
    display: flex; gap: .5rem; align-items: center; position: fixed; left: 0; right: 0; bottom: 0; z-index: 85;
    padding: var(--sticky-pad) max(1rem, env(safe-area-inset-right, 0px)) calc(var(--sticky-pad) + env(safe-area-inset-bottom, 0px)) max(1rem, env(safe-area-inset-left, 0px));
    background: linear-gradient(90deg, rgba(200,30,25,.92), rgba(232,99,26,.92));
    -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px);
    box-shadow: 0 -10px 30px -12px rgba(60,10,0,.45);
    transform: translateY(110%); visibility: hidden;
    transition: transform .35s var(--ease-out), visibility 0s linear .35s;
  }
  .sticky-cta[hidden] { display: none; }
  .sticky-cta.is-visible { transform: none; visibility: visible; transition: transform .35s var(--ease-out), visibility 0s; }
  .sticky-cta__book {
    flex: 1 1 auto; min-width: 0;
    display: flex; align-items: center; justify-content: center; gap: .625rem;
    min-height: 48px; padding: .5rem 1.25rem; border-radius: var(--r-pill);
    background: var(--color-white); color: var(--color-text); text-decoration: none;
    font-size: 1rem; font-weight: 600; line-height: 1.2;
  }
  .sticky-cta__sub { font-size: .75rem; font-weight: 500; opacity: .65; }
  .sticky-cta__book:active { background: var(--color-bg); }
  .sticky-cta__book:focus-visible { outline: 2px solid var(--color-white); outline-offset: 3px; }
  /* Secondary: the free guide popup (js/welcome.js), a glass outline next to the white pill. */
  .sticky-cta__guide {
    flex: 0 0 auto; min-height: 48px; padding: .5rem 1rem; border-radius: var(--r-pill);
    background: rgba(255,255,255,.14); border: 0; box-shadow: inset 0 0 0 1px rgba(255,255,255,.7);
    color: var(--color-white); font: inherit; font-size: .875rem; font-weight: 600; line-height: 1.2; cursor: pointer;
  }
  .sticky-cta__guide:active { background: rgba(255,255,255,.26); }
  .sticky-cta__guide:focus-visible { outline: 2px solid var(--color-white); outline-offset: 3px; }
  .sticky-cta__label, .sticky-cta__guide { white-space: nowrap; }
}
@media (max-width: 430px) {
  /* Narrow phones: the pill's two lines stack so "Free guide" keeps its room. */
  .sticky-cta__book { flex-direction: column; gap: 0; padding-block: .375rem; }
}
@media (max-width: 768px) and (prefers-reduced-motion: reduce) {
  .sticky-cta, .sticky-cta.is-visible { transition: none; }
}
