/* Launch banner, store badges and the "Get the app" section (Nov 1 2026). */
.launch-banner { background: linear-gradient(90deg, var(--brand-700, #1d4ed8), var(--brand-500, #3b82f6)); color: #fff; }
.launch-banner-inner { display: flex; align-items: center; justify-content: center; gap: .75rem; flex-wrap: wrap; padding-block: .7rem; text-align: center; }
.launch-banner-tag { font-size: .75rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; background: rgba(255,255,255,.18); border-radius: 999px; padding: .2rem .6rem; }
.launch-banner-text { margin: 0; font-size: .95rem; line-height: 1.4; }
.launch-banner-cta { color: #fff; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; min-height: 40px; display: inline-flex; align-items: center; }
.launch-banner-cta:hover { opacity: .9; }

.store-badges { display: flex; flex-wrap: wrap; gap: .75rem; align-items: flex-start; justify-content: center; margin-top: 1.25rem; }
.store-badges--start { justify-content: flex-start; }
.store-badge { position: relative; display: inline-flex; flex-direction: column; align-items: center; gap: .3rem; text-decoration: none; transition: transform .15s ease, opacity .15s ease; }
.store-badge:hover { transform: translateY(-1px); }
.store-badge-img { height: 48px; width: auto; display: block; }
.store-badge.is-soon { cursor: default; }
.store-badge.is-soon .store-badge-img { opacity: .55; }
.store-badge.is-soon:hover { transform: none; }
.store-badge-soon { font-size: .75rem; font-weight: 600; color: var(--neutral-600, #475569); letter-spacing: .02em; }

.get-the-app { padding-block: 4.5rem; background: var(--bg-subtle, #f8fafc); }
.get-the-app-grid { display: grid; grid-template-columns: 1.2fr .8fr; gap: 3rem; align-items: center; }
.get-the-app-copy h2 { margin: .5rem 0 1rem; }
.get-the-app-points { list-style: none; padding: 0; margin: 1.25rem 0 0; display: grid; gap: .6rem; }
.get-the-app-points li { padding-left: 1.6rem; position: relative; line-height: 1.5; }
.get-the-app-points li::before { content: ""; position: absolute; left: 0; top: .45rem; width: .7rem; height: .7rem; border-radius: 50%; background: var(--brand-500, #3b82f6); }
.get-the-app-visual { display: flex; justify-content: center; }
.phone-frame { width: 230px; border-radius: 34px; padding: 12px; background: #0f172a; box-shadow: 0 24px 60px rgba(15,23,42,.25); }
.phone-screen { border-radius: 24px; background: #fff; padding: 2.5rem .9rem 1.5rem; display: grid; gap: .6rem; min-height: 360px; align-content: start; }
.phone-row { display: flex; align-items: center; gap: .55rem; font-size: .8rem; color: #0f172a; background: #f1f5f9; border-radius: 12px; padding: .65rem .7rem; }
.phone-row--accent { background: #dbeafe; }
.phone-dot { width: .55rem; height: .55rem; border-radius: 50%; background: var(--brand-500, #3b82f6); flex: none; }
.phone-dot--green { background: #10b981; }
.phone-dot--amber { background: #f59e0b; }

@media (max-width: 860px) {
  .get-the-app-grid { grid-template-columns: 1fr; gap: 2rem; }
  .get-the-app-visual { order: -1; }
  .store-badges--start { justify-content: center; }
  .get-the-app-copy { text-align: left; }
}
@media (max-width: 639px) {
  .launch-banner-text { font-size: .875rem; }
  .store-badge-img { height: 44px; }
  .phone-row { font-size: .75rem; }
}
