/* =====================================================================
   MINI : layout strony minimalnej (WWWmini).
   Wyłącznie tokeny z warstwy semantic/primitives. Reużywa: base, components,
   header, footer. Tu tylko: hero, o nas, wartości, kontakt, reveal.
   ===================================================================== */

/* ---- HEADER: zawsze solidny (jasne hero) ---- */
.site-header--solid {
  background: var(--bg-default);
  border-bottom-color: var(--border-default);
  box-shadow: var(--shadow-200);
  backdrop-filter: saturate(1.4) blur(8px);
}
.site-header--solid .logo-light { display: none; }
.site-header--solid .logo-brand { display: block; }
.site-header--solid .site-nav a { color: var(--text-default); }
.site-header--solid .site-header__login { color: var(--text-default); }
.site-header--solid .site-header__login:hover { background: var(--bg-secondary); color: var(--text-default); }
.site-header--solid .hamburger span { background: var(--text-default); }
.site-header--solid:not(.scrolled) .site-header__actions .btn-primary {
  background: var(--bg-brand); color: var(--text-on-brand); border-color: var(--bg-brand);
}
.site-header--solid:not(.scrolled) .site-header__actions .btn-primary:hover {
  background: var(--bg-brand-hover); border-color: var(--bg-brand-hover);
}
/* odstęp pod stałym nagłówkiem */
.hero-mini { margin-top: var(--header-height); }
/* nawigacja: nie zawijaj linków, ciaśniej na węższym desktopie */
.site-nav a { white-space: nowrap; }
.site-nav { gap: var(--space-600); }
@media (min-width: 769px) and (max-width: 1040px) {
  .site-header__inner { gap: var(--space-400); }
  .site-nav { gap: var(--space-400); }
  .site-header__actions { gap: var(--space-200); }
}

/* ---- REVEAL (scroll-in) ---- */
.reveal {
  opacity: 0;
  transform: translateY(var(--motion-distance-md));
  transition: opacity var(--duration-slow) var(--easing-out), transform var(--duration-slow) var(--easing-out);
}
.reveal.is-visible { opacity: 1; transform: none; }

/* ===================== HERO ===================== */
.hero-mini {
  position: relative;
  overflow: hidden;
  padding-block: clamp(var(--space-2400), 12vw, var(--space-4000));
  text-align: center;
  isolation: isolate;
}
/* miękkie akcenty brandowe w tle + delikatny sygnet */
.hero-mini::before {
  content: "";
  position: absolute; inset: 0; z-index: -2;
  background:
    radial-gradient(60% 60% at 50% -10%, color-mix(in srgb, var(--bg-brand) 12%, transparent), transparent 70%),
    radial-gradient(40% 40% at 85% 20%, color-mix(in srgb, var(--bg-brand) 7%, transparent), transparent 70%);
}
.hero-mini__sygnet {
  position: absolute; z-index: -1;
  top: clamp(-40px, -3vw, -20px); right: clamp(-30px, 4vw, 60px);
  width: clamp(180px, 26vw, 340px); height: auto;
  opacity: .05;
  pointer-events: none;
}
.hero-mini__inner { max-width: 60ch; margin-inline: auto; display: flex; flex-direction: column; align-items: center; gap: var(--space-600); }

.eyebrow {
  display: inline-flex; align-items: center; gap: var(--space-200);
  padding: var(--space-150) var(--space-400);
  background: var(--bg-brand-tertiary);
  color: var(--text-brand);
  border: var(--stroke-border) solid var(--border-brand-secondary);
  border-radius: var(--radius-full);
  font-size: var(--scale-01); font-weight: var(--weight-semibold);
  letter-spacing: .04em; text-transform: uppercase;
}
.eyebrow__dot { width: 7px; height: 7px; border-radius: 50%; background: var(--bg-brand); }

.hero-mini__title {
  font-family: var(--font-serif);
  font-weight: var(--weight-bold);
  font-size: clamp(var(--scale-07), 6vw, var(--scale-10));
  line-height: 1.08;
  letter-spacing: -.01em;
  color: var(--text-default);
  text-wrap: balance;
}
.hero-mini__title em { font-style: italic; color: var(--text-brand); }

.hero-mini__lead {
  font-size: clamp(var(--scale-03), 2.2vw, var(--scale-05));
  line-height: 1.6;
  color: var(--text-secondary);
  max-width: 54ch;
}
.hero-mini__actions { display: flex; flex-wrap: wrap; gap: var(--space-400); justify-content: center; }

/* pasek zaufania */
.trust-row {
  display: flex; flex-wrap: wrap; justify-content: center;
  gap: var(--space-400) var(--space-800);
  margin-top: var(--space-400);
  color: var(--text-secondary);
}
.trust-row__item { display: inline-flex; align-items: center; gap: var(--space-200); font-size: var(--scale-02); font-weight: var(--weight-medium); }
.trust-row__item svg { color: var(--text-brand); flex: none; }

/* ===================== O NAS ===================== */
.about-grid {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: clamp(var(--space-800), 5vw, var(--space-2400));
  align-items: start;
  max-width: 60rem; margin-inline: auto;
}
.about-grid h2 {
  font-family: var(--font-serif);
  font-size: clamp(var(--scale-06), 4vw, var(--scale-08));
  line-height: 1.15; letter-spacing: -.01em;
  color: var(--text-default);
}
.about-grid h2 em { font-style: italic; color: var(--text-brand); }
.about-prose { display: flex; flex-direction: column; gap: var(--space-400); }
.about-prose p { color: var(--text-secondary); font-size: var(--scale-04); line-height: 1.65; }
.about-prose strong { color: var(--text-default); }

/* ===================== WARTOŚCI ===================== */
.section--tint { background: var(--bg-secondary); }
.values-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap: var(--space-600);
  max-width: 64rem; margin-inline: auto;
}
.value-card {
  background: var(--bg-default);
  border: var(--stroke-border) solid var(--border-default);
  border-radius: var(--radius-500);
  padding: clamp(var(--space-600), 3vw, var(--space-800));
  display: flex; flex-direction: column; gap: var(--space-300);
  box-shadow: var(--shadow-100);
  transition: box-shadow var(--duration-fast) var(--easing-in-out), border-color var(--duration-fast) var(--easing-in-out);
}
.value-card:hover { box-shadow: var(--shadow-300); border-color: var(--border-brand-secondary); }
.value-card__ico {
  width: 44px; height: 44px; border-radius: var(--radius-300);
  display: grid; place-items: center;
  background: var(--bg-brand-tertiary); color: var(--text-brand);
}
.value-card__ico svg { width: 22px; height: 22px; }
.value-card h3 { font-size: var(--scale-04); font-weight: var(--weight-semibold); color: var(--text-default); }
.value-card p { font-size: var(--scale-02); line-height: 1.55; color: var(--text-secondary); }

/* dwukolumnowa odmiana siatki (platforma, dostęp) */
.values-grid--2 { grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); max-width: 56rem; }

/* tag systemu (iOS/Android, desktop) */
.platform-os {
  margin-top: var(--space-200);
  font-size: var(--scale-01); font-weight: var(--weight-semibold);
  letter-spacing: .04em; text-transform: uppercase;
  color: var(--text-brand);
}

/* karta z przyciskiem (logowanie/rejestracja) */
.value-card--cta { gap: var(--space-400); }
.value-card--cta p { flex: 1; }
.value-card--cta .btn { align-self: flex-start; margin-top: var(--space-200); }

/* ===================== POBIERZ APLIKACJĘ ===================== */
.download-band {
  max-width: 56rem; margin-inline: auto;
  background: var(--bg-default);
  border: var(--stroke-border) solid var(--border-default);
  border-radius: var(--radius-600);
  padding: clamp(var(--space-800), 4vw, var(--space-1200));
  box-shadow: var(--shadow-100);
  display: flex; flex-wrap: wrap; align-items: center;
  gap: clamp(var(--space-800), 4vw, var(--space-1600));
  justify-content: center;
}
.download-band__main { flex: 1 1 20rem; max-width: 24rem; display: flex; flex-direction: column; gap: var(--space-300); }
.download-band__main h3 { font-size: var(--scale-05); font-weight: var(--weight-semibold); color: var(--text-default); }
.download-band__main p { font-size: var(--scale-02); line-height: 1.55; color: var(--text-secondary); }

.store-badges { display: flex; flex-wrap: wrap; gap: var(--space-300); margin-top: var(--space-400); }
.store-badge {
  position: relative;
  display: inline-flex; align-items: center; gap: var(--space-300);
  padding: var(--space-300) var(--space-400);
  border-radius: var(--radius-400);
  background: var(--bg-inverse, #0b1220);
  color: var(--text-on-inverse, #fff);
  text-decoration: none;
  transition: box-shadow var(--duration-fast) var(--easing-in-out), background-color var(--duration-fast) var(--easing-in-out);
}
.store-badge:hover { box-shadow: var(--shadow-300); }
.store-badge:focus-visible { outline: var(--stroke-focus-ring) solid var(--border-focus); outline-offset: 2px; }
.store-badge__glyph { flex: none; width: 24px; height: auto; }
.store-badge__txt { display: flex; flex-direction: column; line-height: 1.15; text-align: left; }
.store-badge__small { font-size: var(--scale-01); letter-spacing: .02em; opacity: .85; white-space: nowrap; }
.store-badge__big { font-size: var(--scale-03); font-weight: var(--weight-semibold); font-family: var(--font-sans); white-space: nowrap; }

/* stan „Wkrótce" — nieaktywny, nie linkuje, nic nie robi */
.store-badge--soon {
  background: var(--bg-secondary);
  color: var(--text-tertiary, var(--text-secondary));
  pointer-events: none;
  cursor: default;
}
.store-badge--soon .store-badge__glyph { opacity: .4; }
/* w stanie „Wkrótce" plakietka niesie komunikat — mały napis „POBIERZ Z" chowamy, by nie nachodził */
.store-badge--soon .store-badge__small { visibility: hidden; }
.soon-tag {
  position: absolute; top: -9px; right: var(--space-400);
  background: var(--bg-brand); color: var(--text-on-brand);
  font-size: var(--scale-01); font-weight: var(--weight-semibold);
  letter-spacing: .04em; text-transform: uppercase;
  padding: 2px var(--space-200); border-radius: var(--radius-full);
}

.download-band__qr { flex: none; display: flex; flex-direction: column; align-items: center; gap: var(--space-200); }
.download-band__qr img {
  width: 132px; height: 132px;
  padding: var(--space-200); background: var(--bg-default);
  border: var(--stroke-border) solid var(--border-default); border-radius: var(--radius-400);
}
.download-band__qr span { font-size: var(--scale-01); color: var(--text-secondary); }

@media (max-width: 640px) {
  .download-band { flex-direction: column; text-align: center; }
  .download-band__main { text-align: center; align-items: center; max-width: none; }
  .store-badges { justify-content: center; }
}

/* ===================== KONTAKT ===================== */
.contact-card {
  max-width: 52rem; margin-inline: auto;
  background: var(--bg-brand);
  color: var(--text-on-brand);
  border-radius: var(--radius-700);
  padding: clamp(var(--space-1200), 6vw, var(--space-2400));
  text-align: center;
  display: flex; flex-direction: column; align-items: center; gap: var(--space-600);
  box-shadow: var(--shadow-400);
}
.contact-card h2 {
  font-family: var(--font-serif);
  font-size: clamp(var(--scale-06), 4vw, var(--scale-08));
  color: var(--text-on-brand); line-height: 1.15;
}
.contact-card p { color: color-mix(in srgb, var(--text-on-brand) 82%, transparent); font-size: var(--scale-04); max-width: 46ch; }
.contact-card .btn-primary {
  background: var(--bg-default); color: var(--text-brand); border-color: var(--bg-default);
}
.contact-card .btn-primary:hover { background: var(--bg-secondary); color: var(--text-brand); border-color: var(--bg-secondary); }
.contact-meta {
  display: flex; flex-wrap: wrap; justify-content: center; gap: var(--space-400) var(--space-800);
  font-size: var(--scale-02);
  color: color-mix(in srgb, var(--text-on-brand) 75%, transparent);
}
.contact-meta a { color: var(--text-on-brand); text-decoration: underline; text-underline-offset: 3px; }
.contact-meta strong { color: var(--text-on-brand); }

/* ===================== RESPONSYWNOŚĆ ===================== */
@media (max-width: 760px) {
  .about-grid { grid-template-columns: 1fr; gap: var(--space-600); }
}
