/* Kafari launch layout lock. Loaded after styles.css to avoid legacy cascade conflicts. */

/* CTA: all three contact choices are one balanced line on desktop/laptop. */
@media (min-width: 640px) {
  .launch-contact-row {
    display: flex !important;
    flex-flow: row nowrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.60rem !important;
    width: 100% !important;
    max-width: none !important;
    margin-top: 1.15rem !important;
  }

  .launch-contact-row .button {
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 0 !important;
    white-space: nowrap !important;
  }

  /* Journey/destination contact boxes also keep the three choices as one clean row. */
  .contact-panel {
    grid-template-columns: 1fr !important;
  }
  .contact-panel .launch-contact-row {
    justify-content: flex-start !important;
  }
}

/* Footer: brand centered above one centered contact row. */
.site-footer--minimal .launch-footer-stack {
  width: 100% !important;
  max-width: 72rem !important;
  margin-inline: auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 1.15rem !important;
  text-align: center !important;
}

.site-footer--minimal .launch-footer-stack > img {
  display: block !important;
  width: auto !important;
  height: 7.6rem !important;
  max-width: 8.2rem !important;
  object-fit: contain !important;
  object-position: center !important;
  margin: 0 auto !important;
}

.site-footer--minimal .launch-footer-contacts {
  width: auto !important;
  display: flex !important;
  flex-flow: row nowrap !important;
  align-items: center !important;
  justify-content: center !important;
  gap: clamp(1.25rem, 3vw, 2.2rem) !important;
  margin: 0 auto !important;
}

.site-footer--minimal .launch-footer-contacts a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: .48rem !important;
  color: rgba(255,255,255,.86) !important;
  font-size: .94rem !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
}

.site-footer--minimal .launch-footer-contacts svg {
  width: 1.05rem !important;
  height: 1.05rem !important;
  flex: 0 0 auto !important;
}

@media (max-width: 639px) {
  .launch-contact-row {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .7rem !important;
    width: 100% !important;
  }
  .launch-contact-row .button {
    width: 100% !important;
  }

  .site-footer--minimal .launch-footer-stack > img {
    height: 6.3rem !important;
    max-width: 6.9rem !important;
  }
  .site-footer--minimal .launch-footer-contacts {
    flex-wrap: wrap !important;
    gap: .8rem 1.15rem !important;
  }
  .site-footer--minimal .launch-footer-contacts a {
    font-size: .86rem !important;
  }
}
