/* Nadácia TIPOS — brand helpers layered on top of Tailwind Play CDN */

:root {
  --brand-red: #e30613;
  --brand-blue: #2b2171;
  --brand-ink: #1d1d1b;
}

html { scroll-behavior: smooth; }
/* NOTE: no overflow-x:hidden here — it breaks position:sticky headers. */
html, body { max-width: 100%; }

body {
  font-family: 'Inter', ui-sans-serif, system-ui, sans-serif;
  color: var(--brand-ink);
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5, .font-heading {
  font-family: 'Quicksand', ui-sans-serif, system-ui, sans-serif;
}

/* Form controls do not inherit font-family by default — force brand fonts */
input, textarea, select, button {
  font-family: inherit;
}

/* Signature red→blue gradient bar (used as section accent, per design manual) */
.brand-bar {
  height: 5px;
  border-radius: 9999px;
  background: linear-gradient(90deg, var(--brand-red) 0%, var(--brand-blue) 100%);
}

/* ---- Rich text content (interior pages) ---- */
.rich { color: #3f3f52; line-height: 1.75; }
.rich > * + * { margin-top: 1.15rem; }
.rich p { font-size: 1.0625rem; }
.rich a { color: var(--brand-red); font-weight: 600; text-decoration: underline; text-underline-offset: 2px; }
.rich a:hover { color: var(--brand-blue); }
.rich h2 {
  font-family: 'Quicksand', sans-serif;
  font-weight: 700;
  color: var(--brand-red);
  font-size: clamp(1.4rem, 2.4vw, 1.7rem);
  line-height: 1.2;
  margin-top: 2.5rem;
}
.rich h3 {
  font-family: 'Quicksand', sans-serif;
  font-weight: 600;
  color: var(--brand-blue);
  font-size: 1.25rem;
  margin-top: 1.75rem;
}
.rich strong { color: var(--brand-blue); font-weight: 700; }
.rich ul { list-style: none; padding: 0; margin-top: 1.15rem; display: grid; gap: 0.65rem; }
.rich ul li {
  position: relative;
  padding-left: 1.9rem;
  font-size: 1.0625rem;
}
.rich ul li::before {
  content: "";
  position: absolute;
  left: 0; top: 0.55em;
  width: 0.7rem; height: 0.7rem;
  border-radius: 9999px;
  background: var(--brand-red);
}

/* Positive / negative list variants used on grant pages */
.list-check { list-style: none; padding: 0; display: grid; gap: 0.7rem; }
.list-check li { position: relative; padding-left: 2.1rem; line-height: 1.55; }
.list-check li::before {
  content: "✓";
  position: absolute; left: 0; top: 0.05em;
  display: inline-flex; align-items: center; justify-content: center;
  width: 1.4rem; height: 1.4rem;
  font-size: 0.85rem; font-weight: 700;
  color: #fff; background: var(--brand-blue);
  border-radius: 9999px;
}
.list-cross { list-style: none; padding: 0; display: grid; gap: 0.7rem; }
.list-cross li { position: relative; padding-left: 2.1rem; line-height: 1.55; }
.list-cross li::before {
  content: "✕";
  position: absolute; left: 0; top: 0.05em;
  display: inline-flex; align-items: center; justify-content: center;
  width: 1.4rem; height: 1.4rem;
  font-size: 0.8rem; font-weight: 700;
  color: #fff; background: var(--brand-red);
  border-radius: 9999px;
}

/* subtle fade for hero slides */
[data-slide] { transition: opacity 700ms ease; }

/* ===== Homepage: navigácia sa pri scrolle rozšíri (contained -> full width) ===== */
.nt-nav { transition: box-shadow .3s ease; }
.nt-nav-bar {
  background-color: var(--brand-blue);
  max-width: 80rem;                 /* hore contained (= max-w-7xl, lícuje s hero kartou) */
  transition: max-width .35s ease;
}
.nt-nav--home.is-stuck { box-shadow: 0 6px 24px rgba(29, 29, 27, .18); }
.nt-nav--home.is-stuck .nt-nav-bar { max-width: 100%; }   /* pri scrolle na plnú šírku */
