/* ========= Bundes Trials — Brand Theme (фон сайта) ========= */
:root{
  --bt-black:#000000;
  --bt-white:#ffffff;
  --bt-red:#E30613;
  --bt-yellow:#FFD200;
  --bt-gray:#F2F2F2;          /* фирменный «бумажный» фон */

  /* пусть базовый фон bootstrap тоже станет не белым */
  --bs-body-bg: var(--bt-gray);
  --bs-body-color: var(--bt-black);
}

/* body у тебя с классом bg-base — задаём ему фирменный фон */
.bg-base{
  /* мягкий фон с брендовыми свечениями */
  background:
    radial-gradient(1200px 420px at 8% -10%, rgba(227,6,19,.10), transparent 60%),
    radial-gradient(1100px 380px at 92% -12%, rgba(255,210,0,.17), transparent 60%),
    var(--bt-gray) !important;
  color: var(--bt-black);
}

/* светлые панели/карточки остаются белыми на новом фоне */
.bg-panel{ background:#ffffff !important; }
.card{ background:#ffffff; }

/* навбар и футер — чёрные (как и было) */
.navbar, footer{ background:#000 !important; color:#fff; }
.navbar .nav-link{ color:#fff !important; }
.navbar .nav-link:hover{ color:var(--bt-yellow) !important; }

/* кнопки под палитру */
.btn-accent{ background:var(--bt-red); border-color:var(--bt-red); color:#fff; }
.btn-accent:hover{ background:#b1050f; border-color:#b1050f; }
.btn-yellow{ background:var(--bt-yellow); border-color:var(--bt-yellow); color:#000; }
.btn-yellow:hover{ background:#e6be00; border-color:#e6be00; }

/* HERO-cover с фоновым изображением */
.hero-cover{
  min-height: 60vh;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.hero-cover .kpi-num{font-weight:800;}
.hero-cover .kpi .kpi-label{opacity:.75;}

/* Фото в верхнем баннере */
.hero-photo{
  position: relative;
  min-height: 420px;                 /* высота полосы с фото */
  background: url("../img/hero/club.jpg") center/cover no-repeat;
}
.hero-photo__overlay{
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.25);       /* лёгкая затемняющая для читаемости меню */
}

/* Белый блок, слегка приподнят над фоном */
.intr

/* === HERO на фоновой фотографии: белый текст === */
.hero-banner .hero-title,
.hero-banner .hero-title .u-underline,
.hero-banner .lead {
  color: #fff !important;
  text-shadow: 0 2px 8px rgba(0,0,0,.45);
}

/* KPI-плашки под заголовком */
.hero-banner .hero-kpis .kpi-num,
.hero-banner .hero-kpis .kpi-label {
  color: #fff !important;
  text-shadow: 0 2px 6px rgba(0,0,0,.35);
}

/* жёлтая «подчёркивающая» плашка остаётся видимой */
.hero-banner .u-underline::after {
  background: rgba(255, 204, 0, 0.95); /* насыщённый жёлтый */
}

/* HERO: делаем оверлей светлее */
.hero-section {
  position: relative;
}
.hero-section::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, .22) !important; /* было 0.45–0.55; уменьшили до ~22% */
  pointer-events: none;
}
.hero-section > .container {
  position: relative;
  z-index: 1;
}

/* HERO — полноэкранная фотография */
.hero-full{
  min-height: 86vh;              /* почти весь экран */
  background-size: cover;        /* заполняет всё пространство */
  background-position: center;   /* центр кадра */
  background-repeat: no-repeat;
  display: flex;
  align-items: center;           /* центрируем по вертикали */
  padding-top: 4rem;
  padding-bottom: 4rem;
}

/* Убираем прежнее затемнение, если было */
.hero-full::before{ display: none !important; }

/* Белые буквы и лёгкая тень для читабельности */
.bt-hero-white .hero-title,
.bt-hero-white .lead,
.bt-hero-white .kpi,
.bt-hero-white .kpi .kpi-num,
.bt-hero-white .kpi .kpi-label{
  color:#fff !important;
}

.bt-hero-white .hero-title{
  text-shadow: 0 2px 8px rgba(0,0,0,.35);
}
.bt-hero-white .lead{
  text-shadow: 0 1px 6px rgba(0,0,0,.25);
}

/* Чтобы контент был поверх фона (если где-то остался overlay) */
.hero-section > .container{ position: relative; z-index: 1; }


/* HERO: на весь экран и читабельный текст */
.hero-full{
  min-height: 86vh;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  display: flex;
  align-items: center;
  padding-top: 4rem;
  padding-bottom: 4rem;
  position: relative;
}

/* мягкий градиент-оверлей поверх фото для читаемости */
.bt-hero-overlay::before{
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    180deg,
    rgba(0,0,0,.20) 0%,
    rgba(0,0,0,.38) 45%,
    rgba(0,0,0,.50) 100%
  );
  z-index: 0;
}

/* белые буквы + тень */
.bt-hero-white .hero-title,
.bt-hero-white .lead{
  color: #fff !important;
  position: relative;
  z-index: 1;
}
.bt-hero-white .hero-title{ text-shadow: 0 3px 12px rgba(0,0,0,.6); }
.bt-hero-white .lead{        text-shadow: 0 2px 10px rgba(0,0,0,.55); }

/* кнопки поверх оверлея */
.hero-section .btn{ position: relative; z-index: 1; }

/* убрать нижние белые плашки (kpi) под кнопками */
.hero-kpis{ display: none !important; }

/* ---- HERO: усилить читаемость текста ---- */

/* более контрастный оверлей по центру (комбинация radial + linear) */
.bt-hero-overlay::before{
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse at 50% 55%,
      rgba(0,0,0,.58) 0%,
      rgba(0,0,0,.46) 35%,
      rgba(0,0,0,.28) 60%,
      rgba(0,0,0,0) 100%
    ),
    linear-gradient(180deg,
      rgba(0,0,0,.12) 0%,
      rgba(0,0,0,.40) 52%,
      rgba(0,0,0,.55) 100%
    );
  mix-blend-mode: multiply;
  z-index: 0;
}

/* белый текст + «свечение» и легкая обводка */
.bt-hero-white .hero-title,
.bt-hero-white .lead{
  color:#fff !important;
  position: relative;
  z-index: 1;
}

/* заголовок — сильнее выделяем */
.bt-hero-white .hero-title{
  /* легкая обводка (поддерживается в webkit) */
  -webkit-text-stroke: 1px rgba(0,0,0,.35);
  /* многоступенчатая тень для читаемости на любом фоне */
  text-shadow:
    0 3px 10px rgba(0,0,0,.75),
    0 0 24px rgba(0,0,0,.65),
    0 0 2px rgba(0,0,0,.65);
}

/* подзаголовок — помягче, но тоже яркий */
.bt-hero-white .lead{
  text-shadow:
    0 2px 8px rgba(0,0,0,.8),
    0 0 2px rgba(0,0,0,.7);
}

/* на маленьких экранах чуть усилим эффект */
@media (max-width: 576px){
  .bt-hero-white .hero-title{
    -webkit-text-stroke: 1.2px rgba(0,0,0,.4);
    text-shadow:
      0 3px 12px rgba(0,0,0,.85),
      0 0 26px rgba(0,0,0,.7),
      0 0 2px rgba(0,0,0,.7);
  }
}

/* тёмная полупрозрачная подложка только под заголовок */
.bt-hero-white .hero-title{
  display:inline-block;
  padding:.1em .35em;
}
.bt-hero-white .hero-title::before{
  content:"";
  position:absolute;
  inset:-.12em -.35em;
  background: rgba(0,0,0,.28);
  filter: blur(1.5px);
  border-radius:.5rem;
  z-index:-1;
}

/* и под подзаголовок (фон «обтекает» переносы строк) */
.bt-hero-white .lead{
  display:inline;
  padding:.05em .35em;
  background: rgba(0,0,0,.22);
  border-radius:.35rem;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}

/* == Achievements (успехи) == */
.stat-card{
  background:#fff;
  border:1px solid rgba(0,0,0,.06);
  border-radius:1rem;
  padding:1.25rem 1rem;
  box-shadow:0 6px 24px rgba(0,0,0,.06);
}
.stat-icon{
  font-size:1.6rem;
  opacity:.85;
  margin-bottom:.35rem;
}
.stat-num{
  font-family: "Montserrat", system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial, "Noto Sans", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-weight:800;
  font-size:2.2rem;
  line-height:1;
  letter-spacing:.5px;
  margin-bottom:.25rem;
}
.stat-label{
  color:#6c757d;
  font-weight:600;
  font-size:.98rem;
}
@media (min-width: 992px){
  .stat-num{ font-size:2.6rem; }
}

/* кликабельные карточки успехов */
.stat-card{ position:relative; cursor:pointer; transition:transform .15s ease, box-shadow .15s ease; }
.stat-card:hover{ transform:translateY(-2px); box-shadow:0 10px 30px rgba(0,0,0,.08); }
.stat-more{
  display:inline-block; margin-top:.35rem; font-weight:600; font-size:.9rem;
  color:#d60000;
}
.carousel-inner img{ width:100%; height:420px; object-fit:cover; border-radius:.75rem; }
@media (max-width: 576px){
  .carousel-inner img{ height:260px; }
}

.stat-card{ width:100%; border:0; background:#fff; border-radius:16px; padding:22px 18px;
  box-shadow:0 8px 28px rgba(0,0,0,.06); transition:transform .15s ease, box-shadow .15s ease; }
.stat-card:hover{ transform:translateY(-2px); box-shadow:0 12px 36px rgba(0,0,0,.09); }
.stat-icon{ font-size:28px; margin-bottom:10px; color:#111; }
.stat-num{ font-weight:800; font-size:40px; line-height:1; }
.stat-label{ color:#6c757d; margin-top:6px; }
.stat-more{ display:inline-block; margin-top:10px; font-weight:600; color:#d60000; }
#achievements .row .col-12{ display:flex; }
#achievements .stat-card{ display:flex; flex-direction:column; align-items:center; justify-content:center; }

.stat-card{ cursor:pointer; }
.stat-card .stat-more{ pointer-events:auto; text-decoration:underline; font-weight:600; }

/* ====== ДИНАМИКА / ВИЗУАЛ ====== */
:root{
  --bt-accent: #ffd400;
  --bt-accent-2: #ff7a00;
  --bt-dark: #0f0f12;
}

/* HERO (полноэкранный, читабельный текст) */
.bt-hero{position:relative; min-height:calc(100vh - 72px); overflow:hidden;}
.bt-hero .bt-hero-bg{position:absolute; inset:0; background-position:center; background-size:cover; transform:scale(1.1); will-change:transform;}
.bt-hero::after{
  content:""; position:absolute; inset:0;
  background:
    linear-gradient(180deg, rgba(0,0,0,.35) 0%, rgba(0,0,0,.35) 40%, rgba(0,0,0,.55) 100%),
    radial-gradient(60% 80% at 50% 20%, rgba(0,0,0,.25) 0%, transparent 70%);
}
.bt-hero .bt-hero-content{position:relative; z-index:2; color:#fff; text-align:center;}
.bt-hero .title-xl{font-weight:800; letter-spacing:.4px; text-shadow:0 4px 24px rgba(0,0,0,.35);}
.bt-hero .lead-glass{
  display:inline-block; padding:10px 16px; border-radius:14px;
  background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.18);
  backdrop-filter: blur(8px);
}

/* Кнопки-«конфетки» */
.btn-accent{
  --g: linear-gradient(135deg, var(--bt-accent), var(--bt-accent-2));
  background: var(--g); color:#111; border:0;
  box-shadow:0 10px 20px rgba(255,180,0,.25);
  transition:transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
.btn-accent:hover{ transform: translateY(-2px); box-shadow:0 16px 28px rgba(255,180,0,.35); filter:saturate(1.1); }
.btn-outline-secondary:hover{ transform: translateY(-2px); }

/* Карточки: лёгкий подъём при ховере */
.card.hover-lift{ transition:transform .25s ease, box-shadow .25s ease; }
.card.hover-lift:hover{ transform: translateY(-6px) scale(1.01); box-shadow:0 18px 40px rgba(0,0,0,.15); }

/* Плавное появление секций */
.reveal-up{ opacity:0; transform: translateY(18px) scale(.98); transition: all .7s cubic-bezier(.2,.65,.2,1); }
.reveal-up.is-visible{ opacity:1; transform:none; }

/* «Успехи»: карточка-статистика */
.stat-card{
  border:1px solid rgba(0,0,0,.06); border-radius:18px; padding:22px 20px; background:#fff;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.stat-card:hover{ transform: translateY(-6px); box-shadow:0 16px 36px rgba(0,0,0,.12); border-color:rgba(0,0,0,.12); }
.stat-icon{ font-size:22px; color:#555; margin-bottom:6px; }
.stat-num{ font-weight:800; font-size:40px; line-height:1; background:linear-gradient(135deg,#111,#333);
  -webkit-background-clip:text; background-clip:text; color:transparent; }
.stat-label{ color:#6b7280; margin-bottom:10px; }
.stat-more{ font-size:14px; color:#111; text-decoration:none; border-bottom:1px dashed rgba(17,17,17,.35); }
.stat-more:hover{ border-bottom-color: transparent; }

/* «Успехи»: анимируем цифры */
.stat-num[data-count]{ color:#111; background:none; }

/* Гранты: ровная высота картинок и карточек */
#grants .grants-card{ width:280px; min-width:280px; border-radius:16px; }
#grants .grants-card .card-img-top{ aspect-ratio: 3/4; object-fit: cover; }
#grants .grants-track{ scrollbar-width: thin; }
#grants .grants-track::-webkit-scrollbar{ height:10px; }
#grants .grants-track::-webkit-scrollbar-thumb{ background:#d1d5db; border-radius:8px; }

/* ===== HERO ===== */
.bt-hero{
  position:relative;
  min-height:calc(100vh - 72px);            /* во весь экран при сохранении шапки */
  background-position:center;
  background-size:cover;
  overflow:hidden;
}
.bt-hero::after{                              /* мягкое затемнение для читабельности */
  content:"";
  position:absolute; inset:0;
  background:
    linear-gradient(180deg, rgba(0,0,0,.38) 0%, rgba(0,0,0,.30) 35%, rgba(0,0,0,.52) 100%);
}
.bt-hero > .container{ position:relative; z-index:1; }

.hero-title{
  color:#fff;
  text-shadow:0 6px 24px rgba(0,0,0,.35);
}

/* подчёркивание-хайлайт */
.u-underline{
  background: linear-gradient(transparent 70%, #ffd400 0);
  padding-bottom:2px;
}

/* кнопки */
.btn-accent{
  background:linear-gradient(135deg,#ffd400,#ff9c00);
  color:#111;border:0;
  box-shadow:0 10px 20px rgba(255,180,0,.25);
  transition:transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
.btn-accent:hover{ transform:translateY(-2px); box-shadow:0 16px 28px rgba(255,180,0,.35); filter:saturate(1.05); }

.btn-yellow{                                  /* вторая кнопка */
  background:#ffffff; color:#111; border:1px solid rgba(255,255,255,.6);
  backdrop-filter: blur(6px);
}
.btn-yellow:hover{ background:#f7f7f7; }

/* метрики на «стекле» */
.glass{
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.28);
  color:#fff;
  backdrop-filter: blur(8px);
}
.kpi-num{ font-weight:800; }
.kpi-label{ opacity:.9; }

/* адаптив */
@media (max-width: 576px){
  .bt-hero{ min-height: 84vh; }
  .hero-title{ font-size: calc(1.55rem + 1vw); }
}

/* ===== READABILITY FIX: how-card--accent ===== */
.how-card--accent{
  background: linear-gradient(180deg,#121316 0%,#0f1013 100%);
  color:#fff;
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
}

/* Заголовок и параграфы — белые/почти белые */
.how-card--accent .how-title{ color:#fff; text-shadow:0 1px 2px rgba(0,0,0,.45); }
.how-card--accent p,
.how-card--accent .text-muted,
.how-card--accent .card-text{
  color:rgba(255,255,255,.92) !important;
  line-height:1.7;
  font-size:1.05rem;
}

/* Список с галочками — читаемый */
.how-card--accent .list-ticks li{ color:rgba(255,255,255,.95); }
.how-card--accent .list-ticks li::before{ color: var(--bt-accent, #ffd400); }

/* Кнопка — высокий контраст */
.how-card--accent .btn{
  background: linear-gradient(135deg, var(--bt-accent,#ffd400), #ff8a00);
  border:0; color:#111; font-weight:700;
  box-shadow:0 10px 20px rgba(255,180,0,.25);
}
.how-card--accent .btn:hover{
  transform: translateY(-1px);
  box-shadow:0 16px 28px rgba(255,180,0,.35);
  filter:saturate(1.05);
}

/* ===== READABILITY FIX — Project cards ===== */

/* Базовая карточка проекта: белый фон + тёмный текст */
.project-card{
  background:#fff !important;
  color:#111 !important;
  border:1px solid rgba(0,0,0,.08);
  border-radius:22px;
}

/* Акцентная (та, где «Рекомендуем») — светлый градиент + тёмный текст */
.project-card--accent{
  background: linear-gradient(180deg,#ffffff 0%, #fff9e6 100%) !important; /* мягкий «кремовый» */
  color:#111 !important;
}

/* Заголовок и список — принудительно тёмные на всех вариантах */
.project-card .project-title,
.project-card--accent .project-title{
  color:#111 !important;
}

.project-card .project-list li,
.project-card--accent .project-list li{
  color:#262626 !important;       /* читаемый серо-чёрный */
  opacity:1 !important;           /* вдруг где-то занижалась */
  line-height:1.65;
  font-size:1rem;
}

/* Кнопка внутри карточки — высокий контраст (если используешь «btn-white») */
.project-card .project-btn.btn-white{
  background:#111 !important;
  color:#fff !important;
  border:0;
}
.project-card .project-btn.btn-white:hover{
  filter:saturate(1.05);
  transform: translateY(-1px);
  box-shadow:0 10px 24px rgba(0,0,0,.25);
}

/* Чтобы ничего сверху «не выжигало» текст */
.project-card .project-body{ position:relative; z-index:1; }
