

h1, h2, h3, h4{
    color: #463800;
}

@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

h1, h2, h3, h4 {
  opacity: 0;
  animation: fadeInUp 0.8s ease-out forwards;
}

/* Добавим небольшую задержку для красивого каскада */
h2 {
  font-size:25px;
  animation-delay: 0.2s;
}

h3 {
  font-size:22px;
  animation-delay: 0.4s;
}

h4 {
  animation-delay: 0.6s;
}

@media(max-width:680px){
  .h5{
    font-size:18px;
  }
  h2{
    font-size: 22px;
  } 
  
}

 /* Базовые отступы секции на крупных экранах */
@media (min-width: 992px) {
  #hero {
    padding-top: 5rem;   /* py-lg-6 в разметке добавляет ещё, можно подстроить */
    padding-bottom: 5rem;
  }
}
/* 1) Глобально отключаем горизонтальный скролл */
html { overflow-x: clip; }               /* современные браузеры */
body { overflow-x: hidden; width: 100%; } /* фолбэк */

/* ==== Futurion-AI Header Styles ==== */
:root{
  --fut-purple:#7C3AED;
  --fut-cyan:#00C2FF;
  --ink:#0f1f33;
  --muted:#60708a;
  --line:rgba(15,31,51,.08);
}

.navbar{
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial, sans-serif;
}
.nav-link{ color:var(--fut-text); }
.nav-link:hover{ color:var(--fut-purple); }

/* CTA */
.btn-gradient{
  background: linear-gradient(90deg,var(--fut-purple) 0%,var(--fut-cyan) 100%);
  border: none;
  transition: transform .15s ease, opacity .2s ease;
}
.btn-gradient:hover{ transform: translateY(-1px); opacity:.95; }

/* ===== Mega menu (desktop) ===== */
.dropdown.position-static .dropdown-menu.mega{
  left:0; right:0;
  border:0; border-top:1px solid rgba(15,31,51,.06);
  box-shadow:0 10px 30px rgba(15,31,51,.08);
  border-radius:0 0 14px 14px;
}
.mega-container{ max-width:1140px; }
.mega-card{
  border-radius:14px; background:#fff;
  border:1px solid rgba(15,31,51,.06);
  transition: box-shadow .2s, transform .12s, border-color .2s;
  color:var(--fut-text); text-decoration:none;
}
.mega-card:hover{
  box-shadow:0 10px 24px rgba(15,31,51,.08);
  border-color: rgba(124,58,237,.25);
  transform: translateY(-2px);
}
.mega-ico{
  display:inline-flex; align-items:center; justify-content:center;
  width:44px; height:44px; border-radius:999px;
  background: rgba(0,194,255,.12);
  margin-bottom:.35rem;
}
.ico-outline{
  font-size:14px; font-weight:700; color:var(--fut-text);
  border:2px solid rgba(124,58,237,.35); background:rgba(124,58,237,.08);
  width:44px; height:44px; display:inline-flex; align-items:center; justify-content:center; border-radius:999px;
}
.mega-card h6{ font-weight:700; color:var(--fut-text); }
.mega-card p{ color:#6b7a90; }

/* Маленький dropdown (Entreprise) */
.dropdown-menu.shadow-sm{
  border-radius:14px; border:1px solid rgba(15,31,51,.06);
}
.dropdown-item{ border-radius:8px; }
.dropdown-item:hover{
  background: linear-gradient(90deg, rgba(124,58,237,.12), rgba(0,194,255,.12));
}

/* ===== Hover open на десктопе (надежно, без JS зависимостей) ===== */
@media (min-width: 992px){
  .dropdown.position-static:hover > .dropdown-menu.mega { display:block; }
  .nav-item.dropdown:not(.position-static):hover > .dropdown-menu { display:block; }
}

/* ===== Mobile behaviour ===== */
@media (max-width: 991.98px){
  /* Мега-меню внутри бургер-коллапса — статично и раскрывается как “аккордеон” */
  .dropdown.position-static .dropdown-menu.mega{
    position: static;
    inset: auto !important;
    border:0; box-shadow:none;
    border-radius:10px;
    padding:.5rem 0;
    margin-top:.25rem;
    display: none;
  }
  .dropdown.position-static .dropdown-menu.mega.show{ display:block; }
  .dropdown.position-static.show > .dropdown-menu.mega{ display:block; }

  /* Обычный dropdown (Entreprise) */
  .navbar .dropdown:not(.position-static) .dropdown-menu{
    position: static;
    float: none;
    border:0; box-shadow:none;
    margin-top:.25rem;
    display: none;
  }
  .navbar .dropdown:not(.position-static) .dropdown-menu.show{ display:block; }

  .dropdown-item{ padding:.7rem .9rem; }
}

/* алерт успеха в фирменной гамме */
.alert-success{
  border: 0;
  background: linear-gradient(90deg, rgba(124,58,237,.12), rgba(0,194,255,.12));
  color: #0f1f33;
  font-weight: 600;
}

/* Основной блок */
.hero-futurion {
  position: relative;
  background: linear-gradient(135deg, var(--fut-purple) 0%, var(--fut-cyan) 100%);
  color: #fff;
  overflow: hidden;
}

/* Точечная сетка поверх фона — современный tech-look */
.hero-futurion::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(255, 255, 255, 0.3) 1px, transparent 1px);
  background-size: 28px 28px;
  background-position: 0 0;
  pointer-events: none;
}

/* Контейнер текста */
.min-vh-70 {
  min-height: 70vh;
}

.text-white-80 {
  color: rgba(255, 255, 255, 0.85) !important;
}

/* Кнопка */
.btn-hero-light {
  background: #fff;
  color: var(--fut-dark);
  border: none;
  border-radius: 0.75rem;
  transition: all 0.2s ease;
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.15);
}
.btn-hero-light:hover {
  transform: translateY(-2px);
  background: rgba(255, 255, 255, 0.92);
}

/* Блок изображения */
.hero-image-wrapper {
  position: relative;
  max-width: 520px;
  margin: 0 auto;
}
.hero-image {
  width: 100%;
  height: auto;
  display: block;
}

/* Адаптивность */
@media (max-width: 991.98px) {
  .hero-futurion {
    text-align: center;
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
  .hero-image-wrapper {
    margin-top: 2rem;
  }
}
/* spacing helper */
.py-6{ padding-top:4rem; padding-bottom:4rem; }

/* ===== Services grid ===== */
.f-ai-services{
  background:#fff;
}
.f-ai-services .service-item{
  max-width: 520px;
}
.f-ai-services .service-ico{
  display:inline-flex; align-items:center; justify-content:center;
  width:56px; height:56px; border-radius:14px;
  background: linear-gradient(180deg, rgba(124,58,237,.12), rgba(0,194,255,.12));
  border:1px solid var(--line);
  margin-bottom: 1rem;
}
.f-ai-services h3{
  color: var(--ink);
  font-weight: 800;
}
.f-ai-services p{
  color: var(--muted);
  font-size: 1.05rem;
  line-height: 1.6;
}
.btn-ghost{
  background:#fff;
  border:1.5px solid #0f1f33;
  color:#0f1f33;
  border-radius: .75rem;
  padding: .625rem 1.25rem;
  font-weight: 600;
  transition: all .2s ease;
}
.btn-ghost:hover{
  border-color: transparent;
  color:#fff;
  background: linear-gradient(90deg, var(--fut-purple) 0%, var(--fut-cyan) 100%);
  box-shadow: 0 8px 20px rgba(0,0,0,.08);
}

/* ===== Stats band ===== */
.f-ai-stats{
  background:
    linear-gradient(180deg, rgba(124,58,237,.06), rgba(0,194,255,.06));
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.f-ai-stats .stat{
  text-align:left;
}
.f-ai-stats .stat-num{
  font-size:2.2rem;
  line-height:1;
  font-weight: 900;
  color: var(--ink);
  letter-spacing:.2px;
}
.f-ai-stats .stat-label{
  margin-top:.35rem;
  color:#45566f;
  font-size:1.05rem;
}

/* Responsive tidy */
@media (max-width: 991.98px){
  .f-ai-services .service-item{ max-width: 100%; }
  .f-ai-stats .stat{ text-align:center; }
  .f-ai-stats .stat-num{ font-size:2rem; }
}

/* spacing helper */
.py-6{ padding-top:4.5rem; padding-bottom:4.5rem; }

/* ===== Section 3 ===== */
.f-ai-designed{ background:#fff; }
.text-ink{ color:var(--ink); }
.text-mute{ color:#60708a; }

.f-ai-checklist li{
  position: relative;
  padding-left: 2rem;
  margin-bottom: .9rem;
  color: var(--mute);
  font-size: 1.05rem;
  line-height: 1.6;
}
.f-ai-checklist .check-ico{
  position:absolute; left:0; top:.15rem;
  width:1.25rem; height:1.25rem; border-radius:.4rem;
  background: linear-gradient(90deg, var(--fut-purple), var(--fut-cyan));
  -webkit-mask: 
    radial-gradient(#000 60%, transparent 61%) left 55% top 55%/60% 60% no-repeat,
    linear-gradient(#000 0 0) center/100% 100% no-repeat;
  mask:
    radial-gradient(#000 60%, transparent 61%) left 55% top 55%/60% 60% no-repeat,
    linear-gradient(#000 0 0) center/100% 100% no-repeat;
  /* рисуем галочку сверху через псевдоэлемент */
}
.f-ai-checklist .check-ico::after{
  content:"";
  position:absolute; inset:0;
  background:
    linear-gradient(#fff,#fff) left 28% top 55% / 2px 6px no-repeat,
    linear-gradient(#fff,#fff) left 46% top 65% / 2px 10px no-repeat;
  transform: rotate(-45deg);
}

/* CTA ссылкой */
.cta-link{
  display:inline-block;
  font-weight: 700;
  color: var(--ink);
  text-decoration: none;
  border-bottom: 2px solid transparent;
}
.cta-link:hover{
  border-image: linear-gradient(90deg, var(--fut-purple), var(--fut-cyan)) 1;
}

/* ===== Illustration area (right) ===== */
.f-ai-illustration{
  position: relative;
  padding: 2rem;
  border: 1px solid var(--line);
  border-radius: 1rem;
  background: #fff;
  overflow: hidden;
}
/* tech-dot grid behind the image */
.f-ai-illustration::before{
  content:"";
  position:absolute; inset:0;
  background-image: radial-gradient(rgba(124,58,237,.25) 1px, transparent 1px);
  background-size: 26px 26px;
  opacity:.35; pointer-events:none;
}
.f-ai-illustration img{
  position: relative; /* выше сетки */
  display:block; width:100%; height:auto;
}

/* Responsive */
@media (max-width: 991.98px){
  .f-ai-illustration{ margin-top: .5rem; }
}

/* spacing helper */
.py-6{ padding-top:4.5rem; padding-bottom:4.5rem; }

/* Section base */
.fai-serve{
  background: var(--band);
  border-top: 1px solid var(--card-border);
  border-bottom: 1px solid var(--card-border);
}
.text-ink{ color: var(--ink); }
.text-mute{ color: var(--mute); }

/* Cards */
.fai-card{
  background:#fff;
  border:1px solid var(--card-border);
  border-radius: 16px;
  padding: 1.25rem 1.25rem 1rem;
  transition: transform .15s ease, box-shadow .2s ease, border-color .2s ease;
  height: 100%;
}
.fai-card:hover{
  transform: translateY(-2px);
  box-shadow: 0 14px 28px rgba(15,31,51,.08);
  border-color: rgba(124,58,237,.25);
}

/* Icon badge */
.fai-ico{
  display:inline-flex; align-items:center; justify-content:center;
  width:48px; height:48px; border-radius:12px;
  background: linear-gradient(180deg, rgba(124,58,237,.12), rgba(0,194,255,.12));
  border:1px solid var(--card-border);
  margin-bottom: .75rem;
}

/* CTA link */
.fai-link{
  display:inline-block;
  font-weight:700;
  color: var(--ink);
  text-decoration:none;
  border-bottom:2px solid transparent;
}
.fai-link:hover{
  border-image: linear-gradient(90deg, var(--fut-purple), var(--fut-cyan)) 1;
}

/* Responsive tweaks */
@media (max-width: 991.98px){
  .fai-serve .display-5{ font-size: 2rem; }
}
/* spacing helper */
.py-6{ padding-top:4.5rem; padding-bottom:4.5rem; }

/* ===== Section base ===== */
.fai-compliance{
  background:#fff;
}

/* Text colors */
.text-ink{ color:var(--ink); }
.text-mute{ color:var(--mute); }

/* ===== Illustration card with tech-dot grid ===== */
.fai-illu-card{
  position: relative;
  padding: 2rem;
  border:1px solid var(--line);
  border-radius: 16px;
  background:#fff;
  overflow:hidden;
}
.fai-illu-card::before{
  content:"";
  position:absolute; inset:0;
  background-image: radial-gradient(rgba(124,58,237,.28) 1px, transparent 1px);
  background-size: 26px 26px;
  opacity:.35; pointer-events:none;
}
.fai-illu-card img{ position:relative; display:block; width:100%; height:auto; }

/* ===== Checklist ===== */
.fai-list li{
  position:relative;
  padding-left:2rem;
  margin-bottom:.9rem;
  color:var(--mute);
  font-size:1.05rem;
  line-height:1.6;
}
.fai-list .tick{
  position:absolute; left:0; top:.15rem;
  width:1.25rem; height:1.25rem; border-radius:.4rem;
  background: linear-gradient(90deg, var(--fut-purple), var(--fut-cyan));
}
.fai-list .tick::before{
  content:"";
  position:absolute; inset:0;
  background:
    linear-gradient(#fff,#fff) 28% 55%/2px 6px no-repeat,
    linear-gradient(#fff,#fff) 46% 65%/2px 10px no-repeat;
  transform: rotate(-45deg);
}

/* CTA link */
.fai-link{
  display:inline-block;
  font-weight:700;
  color:var(--ink);
  text-decoration:none;
  border-bottom:2px solid transparent;
}
.fai-link:hover{
  border-image: linear-gradient(90deg, var(--fut-purple), var(--fut-cyan)) 1;
}

/* Responsive tweaks */
@media (max-width: 991.98px){
  .fai-illu-card{ margin-bottom:.5rem; }
}


/* ===== Section base ===== */
.fai-certifications{
  background: linear-gradient(135deg, var(--fut-purple) 0%, var(--fut-cyan) 100%);
  color: #fff;
  position: relative;
  overflow: hidden;
}

/* Decorative subtle pattern (optional dots grid) */
.fai-certifications::before{
  content:"";
  position:absolute;
  inset:0;
  background-image: radial-gradient(rgba(255,255,255,.08) 1px, transparent 1px);
  background-size: 28px 28px;
  pointer-events:none;
}
.fai-certifications .container{
  position: relative;
  z-index: 1;
}

/* Headings and text */
.text-ink{ color:#fff !important; }
.text-mute{ color:rgba(255,255,255,.8) !important; }

/* ===== Card style ===== */
.fai-cert-card{
  background: var(--card-bg);
  border: 1px solid var(--card-border);
  border-radius: 16px;
  padding: 1.5rem;
  transition: all .25s ease;
  color: var(--ink);
}
.fai-cert-card:hover{
  transform: translateY(-3px);
  box-shadow: 0 16px 32px rgba(0,0,0,.15);
}

/* ===== Icon badge ===== */
.fai-cert-ico{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:50px; height:50px;
  border-radius:12px;
  background: linear-gradient(180deg, rgba(124,58,237,.12), rgba(0,194,255,.12));
  border:1px solid rgba(15,31,51,.08);
  margin-bottom:1rem;
}

/* ===== Responsive ===== */
@media (max-width: 991.98px){
  .fai-certifications .display-5{ font-size:2rem; }
  .fai-cert-card{ text-align:center; }
  .fai-cert-ico{ margin-left:auto; margin-right:auto; }
}

/* section background (мягкая светлая лента как в примере) */
.fai-differentiators{
  background: var(--band);
}

/* text colors */
.text-ink{ color: var(--ink); }
.text-mute{ color: var(--mute); }

/* item */
.fai-diff-item{ max-width: 560px; }
.fai-diff-ico{
  display:inline-flex; align-items:center; justify-content:center;
  width:56px; height:56px; border-radius:14px;
  background: linear-gradient(180deg, rgba(124,58,237,.12), rgba(0,194,255,.12));
  border:1px solid rgba(15,31,51,.08);
  margin-bottom: 1rem;
}

/* responsive tweaks */
@media (max-width: 991.98px){
  .fai-differentiators .display-5{ font-size: 2rem; }
}

.fai-supported{ background:#fff; }
.text-ink{ color:var(--ink); }
.text-mute{ color:var(--muted); }

/* карточка инструмента */
.tool-card{
  background: var(--tile-bg);
  border: 1px solid var(--tile-border);
  border-radius: 18px;
  padding: 1.25rem 1rem;
  text-align: center;
  transition: transform .15s ease, box-shadow .2s ease, background .2s ease;
  height: 100%;
}
.tool-card:hover{
  transform: translateY(-2px);
  box-shadow: 0 12px 24px rgba(15,31,51,.08);
  background:#fff;
}

/* круглая иконка */
.tool-ico{
  display:inline-block;
  width: 96px; height: 96px;
  border-radius: 50%;
  background: #0f2545;
  display:flex; align-items:center; justify-content:center;
  margin: .25rem auto 1rem;
  box-shadow: 0 6px 14px rgba(15,31,51,.18) inset;
}
.tool-ico svg{ display:block; }

/* подпись */
.tool-name{
  font-weight: 600;
  color: var(--ink);
  font-size: 1.05rem;
}

/* адаптивность: компактнее на мобиле */
@media (max-width: 575.98px){
  .tool-ico{ width:82px; height:82px; }
}

/* section background (как у примера — светлая полоса) */
.fai-testimonial{ background: var(--panel); }

/* quote card */
.fai-quote-card{
  background:#fff;
  border:1px solid var(--card-border);
  border-radius: 20px;
  padding: 3rem 1.25rem 2.25rem;
  max-width: 1200px;
}

/* quote badge on top */
.fai-quote-mark{
  width:64px; height:64px;
  margin: -2rem auto 1.5rem;
  background:#fff;
  border:1px solid var(--card-border);
  border-radius: 16px;
  display:flex; align-items:center; justify-content:center;
  box-shadow: 0 6px 18px rgba(15,31,51,.06);
}

/* typography */
.text-ink{ color:var(--ink); }
.text-mute{ color:var(--mute); }
.fai-quote{ line-height: 1.5; }

/* author / company line */
.fai-avatar{ width:56px; height:56px; object-fit:cover; }
.fai-divider{
  width:1px; height:32px; background:rgba(15,31,51,.15);
}
.fai-company img{ display:block; opacity:.9; }
.fai-company img:hover{ opacity:1; }

/* responsive tweaks */
@media (max-width: 991.98px){
  .fai-quote{ font-size:1.25rem; }
  .fai-quote-card{ padding: 2.25rem 1rem 1.75rem; }
}

/* секция */
.fai-cta-contact{
  background: var(--panel);
  border-top: 1px solid rgba(15,31,51,.06);
  border-bottom: 1px solid rgba(15,31,51,.06);
}

/* типографика */
.text-ink{ color: var(--ink); }
.text-mute{ color: var(--mute); }

/* градиентная кнопка в фирменной палитре */
.btn-gradient{
  color:#fff !important;
  background: linear-gradient(90deg, var(--fut-purple), var(--fut-cyan));
  border: none;
  box-shadow: 0 10px 24px rgba(0,0,0,.12);
  transition: transform .15s ease, box-shadow .2s ease, opacity .2s ease;
}
.btn-gradient:hover{
  transform: translateY(-2px);
  opacity: .95;
  box-shadow: 0 14px 30px rgba(0,0,0,.16);
}

/* необязательная вторая кнопка (если включите) */
.btn-outline-dark{
  border:1.5px solid rgba(15,31,51,.6);
  color: var(--ink);
  background:#fff;
  transition: all .2s ease;
}
.btn-outline-dark:hover{
  border-color: transparent;
  color:#fff;
  background: linear-gradient(90deg, var(--fut-purple), var(--fut-cyan));
  box-shadow: 0 10px 24px rgba(0,0,0,.12);
}

/* адаптивность */
@media (max-width: 575.98px){
  .fai-cta-contact .display-5{ font-size: 1.9rem; }
}

/* ===== Footer base ===== */
.fai-footer{
  background: var(--footer-bg);
  color: var(--footer-ink);
  position: relative;
}

/* лёгкий верхний акцент (тонкая градиентная линия) */
.fai-footer::before{
  content:"";
  position:absolute; left:0; right:0; top:0; height:3px;
  background: linear-gradient(90deg, var(--fut-purple), var(--fut-cyan));
}

.footer-title{
  color: #cfe0ff;
  font-weight: 800;
  letter-spacing: .02em;
  text-transform: uppercase;
  font-size: .85rem;
  margin-bottom: .75rem;
}

.footer-brand{
  color: var(--footer-ink); text-decoration: none;
  font-size: 1.1rem;
}
.footer-brand:hover{ opacity:.9; }

.footer-tagline{
  color: var(--footer-mute);
  max-width: 28ch;
  margin-bottom: 0;
}

/* links */
.footer-links li{ margin: .35rem 0; }
.footer-links a{
  color: var(--footer-ink);
  text-decoration: none;
  opacity: .9;
}
.footer-links a:hover{
  opacity: 1;
  text-decoration: underline;
  text-decoration-color: rgba(255,255,255,.35);
}

/* badges */
.footer-badges img{
  margin-right: .5rem;
  opacity: .9;
  filter: drop-shadow(0 2px 6px rgba(0,0,0,.15));
}
.footer-badges img:last-child{ margin-right: 0; }
.footer-badges img:hover{ opacity:1; }

/* divider */
.footer-hr{
  border:0; height:1px;
  background: linear-gradient(90deg, rgba(255,255,255,.06), rgba(255,255,255,.12), rgba(255,255,255,.06));
  margin: 1.5rem 0 1.25rem;
}

/* legal row */
.footer-legal a{
  color: var(--footer-mute);
  text-decoration: none;
}
.footer-legal a:hover{ color: var(--footer-ink); text-decoration: underline; }
.footer-copy{ color: var(--footer-mute); }

/* responsive */
@media (max-width: 991.98px){
  .footer-tagline{ max-width: 100%; margin-top: .25rem; }
  .footer-badges{ display:flex; align-items:center; gap:.5rem; flex-wrap:wrap; }
  .footer-legal{ text-align:center; }
  .footer-copy{ text-align:center; margin-top:.5rem; }
}

/* helpers */
.py-6{ padding-top:4.5rem; padding-bottom:4.5rem; }
.min-vh-50{ min-height:50vh; }

/* ===== HERO ===== */
.svc-hero{
  background: linear-gradient(135deg, var(--fut-purple) 0%, var(--fut-cyan) 100%);
  color:#fff;
  position: relative;
  overflow: hidden;
}
.svc-hero::before{
  content:""; position:absolute; inset:0;
  background-image: radial-gradient(rgba(255,255,255,.25) 1px, transparent 1px);
  background-size: 28px 28px; opacity:.35; pointer-events:none;
}
.text-white-80{ color:rgba(255,255,255,.88)!important; }

/* ===== GRID & CARDS ===== */
.svc-grid{ background:#fff; }

.text-ink{ color:var(--ink); }
.text-mute{ color:var(--mute); }

.svc-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:16px;
  padding:1.25rem 1.25rem 1.5rem;
  transition: transform .15s ease, box-shadow .2s ease, border-color .2s ease;
}
.svc-card:hover{
  transform: translateY(-3px);
  box-shadow: 0 14px 28px rgba(15,31,51,.08);
  border-color: rgba(124,58,237,.25);
}

.svc-ico{
  display:inline-flex; align-items:center; justify-content:center;
  width:52px; height:52px; border-radius:12px;
  background: linear-gradient(180deg, rgba(124,58,237,.12), rgba(0,194,255,.12));
  border:1px solid var(--line);
  margin-bottom:.75rem;
}

/* brand gradient button */
.btn-gradient{
  color:#fff !important;
  background: linear-gradient(90deg, var(--fut-purple), var(--fut-cyan));
  border:none; border-radius:.75rem;
  box-shadow: 0 10px 22px rgba(0,0,0,.12);
  transition: transform .15s ease, box-shadow .2s ease, opacity .2s ease;
}
.btn-gradient:hover{
  transform: translateY(-2px);
  opacity:.97;
  box-shadow: 0 14px 28px rgba(0,0,0,.16);
}

/* responsive */
@media (max-width: 991.98px){
  .svc-hero{ text-align:center; }
}

.py-6{ padding-top:4.5rem; padding-bottom:4.5rem; }

/* Section base */
.svc-howitworks{ background:#fff; }
.text-ink{ color:var(--ink); }
.text-mute{ color:var(--mute); }

/* Gradient brand button */
.btn-gradient{
  color:#fff !important;
  background: linear-gradient(90deg, var(--fut-purple), var(--fut-cyan));
  border:none; box-shadow:0 10px 22px rgba(0,0,0,.12);
  transition: transform .15s ease, box-shadow .2s ease, opacity .2s ease;
}
.btn-gradient:hover{ transform:translateY(-2px); opacity:.97; box-shadow:0 14px 28px rgba(0,0,0,.16); }

/* Timeline layout */
.hiw-steps{ position:relative; }
.hiw-step{
  position:relative;
  display:flex;
  align-items:flex-start;
  gap:1rem;
  padding-bottom:2.25rem;
}
.hiw-step:last-child{ padding-bottom:0; }

/* Vertical line */
.hiw-line{
  position:absolute; left:16px; top:0; bottom:0;
  width:2px; background: linear-gradient(180deg, rgba(124,58,237,.35), rgba(0,194,255,.35));
  border-radius:2px;
}

/* Number badge */
.hiw-badge{
  position:relative;
  z-index:1;
  width:60px; height:60px;
  border-radius:100%;
  display:flex; align-items:center; justify-content:center;
  font-weight:800; color:#0f2545;
  background: #eef6ff;
  box-shadow: 0 4px 14px rgba(15,31,51,.08);
  border:1px solid var(--line);
}

/* Content block */
.hiw-content{
  background:#fff;
  border-left:4px solid transparent;
  padding-left:.5rem;
}
.hiw-step:hover .hiw-content{
  border-image: linear-gradient(180deg, var(--fut-purple), var(--fut-cyan)) 1;
}

/* Responsive */
@media (max-width: 991.98px){
  .svc-howitworks .display-6{ font-size:1.8rem; }
}

.py-6{ padding-top:4.5rem; padding-bottom:4.5rem; }

.svc-faq{ background:#fff; }
.text-ink{ color:var(--ink); }
.text-mute{ color:var(--mute); }

/* Brand gradient button */
.btn-gradient{
  color:#fff !important;
  background: linear-gradient(90deg, var(--fut-purple), var(--fut-cyan));
  border:none; border-radius:.8rem;
  box-shadow:0 10px 22px rgba(0,0,0,.12);
  transition:transform .15s ease, box-shadow .2s ease, opacity .2s ease;
}
.btn-gradient:hover{ transform:translateY(-2px); opacity:.97; box-shadow:0 14px 28px rgba(0,0,0,.16); }

:root{
  --fut-purple:#7C3AED;
  --fut-cyan:#00C2FF;
  --ink:#0f1f33;
  --mute:#5f6f8a;
  --tile:#f5f8ff;
  --line:rgba(15,31,51,.08);
}

.py-6 { padding-top:4.5rem; padding-bottom:4.5rem; }

.text-ink { color:var(--ink); }
.text-mute { color:var(--mute); }

/* BUTTON */
.btn-gradient {
  color:#fff !important;
  background: linear-gradient(90deg,var(--fut-purple),var(--fut-cyan));
  border:none;
  border-radius:.8rem;
  transition: all .2s ease;
  box-shadow:0 10px 22px rgba(0,0,0,.1);
}
.btn-gradient:hover {
  transform:translateY(-2px);
  opacity:.96;
  box-shadow:0 14px 28px rgba(0,0,0,.16);
}

.py-6{ padding-top:4.5rem; padding-bottom:4.5rem; }
.text-ink{ color:var(--ink); }
.text-mute{ color:var(--mute); }

/* Градиентная кнопка (бренд) */
.btn-gradient{
  color:#fff !important;
  background: linear-gradient(90deg, var(--fut-purple), var(--fut-cyan));
  border: none; border-radius: .8rem;
  box-shadow: 0 10px 22px rgba(0,0,0,.12);
  transition: transform .15s ease, box-shadow .2s ease, opacity .2s ease;
}
.btn-gradient:hover{ transform: translateY(-2px); opacity:.97; box-shadow:0 14px 28px rgba(0,0,0,.16); }

/* ===== PURE CSS ACCORDION ===== */
.faq-css .qa{
  background: var(--tile);
  border: 1px solid var(--line);
  border-radius: 1rem;
  box-shadow: 0 8px 22px rgba(15,31,51,.06);
  margin-bottom: 1rem;
  overflow: hidden;
}

/* Суммари — кнопка */
.faq-css .qa__summary{
  list-style: none;                 /* убрать маркер по умолчанию */
  cursor: pointer;
  font-weight: 700;
  color: var(--ink);
  padding: 1.1rem 1.25rem 1.1rem 3.25rem;
  position: relative;
  user-select: none;
}
.faq-css .qa__summary::-webkit-details-marker{ display:none; } /* Safari/Chrome */

/* Иконка + / – слева, меняется по [open] */
.faq-css .qa__summary::before{
  content:"+";
  position:absolute; left:1.25rem; top:1rem;
  width:28px; height:28px; line-height:28px; text-align:center;
  font-weight:800; font-size:1.2rem; color:#123055;
  border-radius:8px;
  background: linear-gradient(180deg, rgba(124,58,237,.12), rgba(0,194,255,.12));
  border:1px solid var(--line);
}
.faq-css .qa[open] .qa__summary::before{
  content:"–";
  color:#fff;
  background: linear-gradient(90deg, var(--fut-purple), var(--fut-cyan));
  border-color: transparent;
}

/* Ховер/фокус состояния */
.faq-css .qa__summary:hover{
  background: linear-gradient(90deg, rgba(124,58,237,.05), rgba(0,194,255,.05));
}
.faq-css .qa__summary:focus{
  outline: 2px solid rgba(124,58,237,.35);
  outline-offset: 2px;
  border-radius: .5rem;
}

/* Контент */
.faq-css .qa__content{
  background:#fff;
  border-top:1px solid var(--line);
  color: var(--mute);
  padding: 1rem 1.25rem 1.25rem 1.25rem;
}

/* Адаптив */
@media (max-width: 991.98px){
  .faq-css-section .display-6{ font-size: 1.8rem; }
}

/* helpers */
.py-6{ padding-top:4.5rem; padding-bottom:4.5rem; }
.min-vh-60{ min-height:60vh; }
.text-ink{ color:var(--ink); }
.text-mute{ color:var(--mute); }
.text-white-80{ color:rgba(255,255,255,.88)!important; }

/* brand button */
.btn-gradient{
  color:#fff !important;
  background: linear-gradient(90deg, var(--fut-purple), var(--fut-cyan));
  border:none; border-radius:.85rem;
  box-shadow:0 10px 22px rgba(0,0,0,.12);
  transition: transform .15s ease, box-shadow .2s ease, opacity .2s ease;
}
.btn-gradient:hover{ transform: translateY(-2px); opacity:.97; box-shadow:0 14px 28px rgba(0,0,0,.16); }

/* ================== SECTION 1: HERO ================== */
.svc1-hero{
  position:relative; overflow:hidden;
  background: linear-gradient(135deg, var(--fut-purple), var(--fut-cyan));
  color:#fff;
}
.svc1-hero::before{
  content:""; position:absolute; inset:0;
  background-image: radial-gradient(rgba(255,255,255,.22) 1px, transparent 1px);
  background-size:28px 28px; opacity:.35; pointer-events:none;
}
.hero-illustration{ max-width:520px; margin:0 auto; }
.hero-badges{
  display:flex; flex-wrap:wrap; gap:.5rem 1rem; padding:0; margin:0; list-style:none;
}
.hero-badges li span{
  display:inline-block; background:rgba(255,255,255,.12); color:#fff;
  border:1px solid rgba(255,255,255,.35); border-radius:.75rem;
  padding:.4rem .7rem; font-weight:600;
}

/* ================== SECTION 2: ABOUT ================== */
.svc1-about{ background:#fff; }
.learn-list li{
  position:relative; padding-left:2rem; margin-bottom:.8rem; color:var(--mute);
}
.learn-list .tick{
  position:absolute; left:0; top:.15rem;
  width:1.25rem; height:1.25rem; border-radius:.4rem;
  background: linear-gradient(90deg, var(--fut-purple), var(--fut-cyan));
}
.learn-list .tick::after{
  content:""; position:absolute; inset:0;
  background:
    linear-gradient(#fff,#fff) 28% 55%/2px 6px no-repeat,
    linear-gradient(#fff,#fff) 46% 65%/2px 10px no-repeat;
  transform: rotate(-45deg);
}
.mini-card{
  background:#fff; border:1px solid var(--line); border-radius:16px;
  padding:1.1rem 1.1rem; transition: box-shadow .2s ease, transform .15s ease;
}
.mini-card:hover{ transform: translateY(-2px); box-shadow:0 12px 26px rgba(15,31,51,.08); }

/* ================== SECTION 3: PROGRAM ================== */
.svc1-program{ background: linear-gradient(180deg, rgba(124,58,237,.06), rgba(0,194,255,.06)); }
.prog-card{
  background:#fff; border:1px solid var(--line); border-radius:18px;
  padding:1.25rem 1.25rem 1.5rem; height:100%;
  transition: transform .15s ease, box-shadow .2s ease, border-color .2s ease;
}
.prog-card:hover{ transform: translateY(-3px); box-shadow:0 14px 28px rgba(15,31,51,.08); border-color:rgba(124,58,237,.25); }
.prog-badge{
  display:inline-block; font-weight:800; color:#0f2545;
  background: linear-gradient(180deg, rgba(124,58,237,.12), rgba(0,194,255,.12));
  border:1px solid var(--line); border-radius:.6rem; padding:.25rem .55rem; margin-bottom:.5rem;
}
.prog-list{ padding-left:1.2rem; color:var(--mute); }
.prog-list li{ margin-bottom:.35rem; }

/* ================== SECTION 4: OUTCOMES ================== */
.svc1-outcomes{ background:#fff; }
.out-stats{ display:flex; gap:1.25rem; flex-wrap:wrap; }
.out-stats .stat{
  background: var(--tile); border:1px solid var(--line); border-radius:14px;
  padding:.85rem 1.1rem; min-width:140px; text-align:center;
}
.out-stats .num{ font-size:1.6rem; font-weight:900; color:var(--ink); line-height:1; }
.out-stats .lbl{ color:var(--mute); font-weight:600; }
.preview-card{
  background:#fff; border:1px solid var(--line); border-radius:16px;
  padding:1.25rem; box-shadow:0 10px 24px rgba(15,31,51,.06);
}

/* ================== SECTION 5: PRICING ================== */
.svc1-pricing{ background:#fff; }
.price-card{
  background:#fff; border:1px solid var(--line); border-radius:18px;
  padding:1.5rem; text-align:center; transition: transform .15s ease, box-shadow .2s ease;
}
.price-card:hover{ transform: translateY(-3px); box-shadow:0 16px 32px rgba(15,31,51,.08); }
.price-card .price{ font-size:2rem; font-weight:900; color:var(--ink); }
.price-card .muted{ color:var(--mute); }
.price-card.featured{ border-color: rgba(124,58,237,.35); box-shadow:0 16px 32px rgba(124,58,237,.12); position:relative; }
.price-card .tag{
  position:absolute; top:-12px; right:14px;
  background: linear-gradient(90deg, var(--fut-purple), var(--fut-cyan));
  color:#fff; font-weight:800; font-size:.8rem; padding:.25rem .5rem; border-radius:.5rem;
}
.feat-list li{ color:var(--mute); margin-bottom:.35rem; }

/* responsive tweaks */
@media (max-width: 991.98px){
  .svc1-hero{ text-align:center; }
  .out-stats{ justify-content:center; }
}

/* helpers */
.py-6{ padding-top:4.5rem; padding-bottom:4.5rem; }
.min-vh-60{ min-height:60vh; }
.text-ink{ color:var(--ink); }
.text-mute{ color:var(--mute); }
.text-white-80{ color:rgba(255,255,255,.88)!important; }

/* brand button */
.btn-gradient{
  color:#fff !important;
  background: linear-gradient(90deg, var(--fut-purple), var(--fut-cyan));
  border:none; border-radius:.85rem;
  box-shadow:0 10px 22px rgba(0,0,0,.12);
  transition: transform .15s ease, box-shadow .2s ease, opacity .2s ease;
}
.btn-gradient:hover{ transform: translateY(-2px); opacity:.97; box-shadow:0 14px 28px rgba(0,0,0,.16); }

/* ================== SECTION 1: HERO ================== */
.svc2-hero{
  position:relative; overflow:hidden;
  background: linear-gradient(135deg, var(--fut-purple), var(--fut-cyan));
  color:#fff;
}
.svc2-hero::before{
  content:""; position:absolute; inset:0;
  background-image: radial-gradient(rgba(255,255,255,.22) 1px, transparent 1px);
  background-size:28px 28px; opacity:.35; pointer-events:none;
}
.hero-illustration{ max-width:520px; margin:0 auto; }
.hero-badges{
  display:flex; flex-wrap:wrap; gap:.5rem 1rem; padding:0; margin:0; list-style:none;
}
.hero-badges li span{
  display:inline-block; background:rgba(255,255,255,.12); color:#fff;
  border:1px solid rgba(255,255,255,.35); border-radius:.75rem;
  padding:.4rem .7rem; font-weight:600;
}

/* ================== SECTION 2: WHY / GOALS ================== */
.svc2-why{ background:#fff; }
.learn-list li{
  position:relative; padding-left:2rem; margin-bottom:.8rem; color:var(--mute);
}
.learn-list .tick{
  position:absolute; left:0; top:.15rem;
  width:1.25rem; height:1.25rem; border-radius:.4rem;
  background: linear-gradient(90deg, var(--fut-purple), var(--fut-cyan));
}
.learn-list .tick::after{
  content:""; position:absolute; inset:0;
  background:
    linear-gradient(#fff,#fff) 28% 55%/2px 6px no-repeat,
    linear-gradient(#fff,#fff) 46% 65%/2px 10px no-repeat;
  transform: rotate(-45deg);
}
.mini-card{
  background:#fff; border:1px solid var(--line); border-radius:16px;
  padding:1.1rem 1.1rem; transition: box-shadow .2s ease, transform .15s ease;
}
.mini-card:hover{ transform: translateY(-2px); box-shadow:0 12px 26px rgba(15,31,51,.08); }

/* ================== SECTION 3: PROGRAM ================== */
.svc2-program{ background: linear-gradient(180deg, rgba(124,58,237,.06), rgba(0,194,255,.06)); }
.prog-card{
  background:#fff; border:1px solid var(--line); border-radius:18px;
  padding:1.25rem 1.25rem 1.5rem; height:100%;
  transition: transform .15s ease, box-shadow .2s ease, border-color .2s ease;
}
.prog-card:hover{ transform: translateY(-3px); box-shadow:0 14px 28px rgba(15,31,51,.08); border-color:rgba(124,58,237,.25); }
.prog-badge{
  display:inline-block; font-weight:800; color:#0f2545;
  background: linear-gradient(180deg, rgba(124,58,237,.12), rgba(0,194,255,.12));
  border:1px solid var(--line); border-radius:.6rem; padding:.25rem .55rem; margin-bottom:.5rem;
}
.prog-list{ padding-left:1.2rem; color:var(--mute); }
.prog-list li{ margin-bottom:.35rem; }

/* ================== SECTION 4: OUTCOMES ================== */
.svc2-outcomes{ background:#fff; }
.out-stats{ display:flex; gap:1.25rem; flex-wrap:wrap; }
.out-stats .stat{
  background: var(--tile); border:1px solid var(--line); border-radius:14px;
  padding:.85rem 1.1rem; min-width:140px; text-align:center;
}
.out-stats .num{ font-size:1.6rem; font-weight:900; color:var(--ink); line-height:1; }
.out-stats .lbl{ color:var(--mute); font-weight:600; }
.preview-card{
  background:#fff; border:1px solid var(--line); border-radius:16px;
  padding:1.25rem; box-shadow:0 10px 24px rgba(15,31,51,.06);
}

/* ================== SECTION 5: PRICING ================== */
.svc2-pricing{ background:#fff; }
.price-card{
  background:#fff; border:1px solid var(--line); border-radius:18px;
  padding:1.5rem; text-align:center; transition: transform .15s ease, box-shadow .2s ease;
}
.price-card:hover{ transform: translateY(-3px); box-shadow:0 16px 32px rgba(15,31,51,.08); }
.price-card .price{ font-size:2rem; font-weight:900; color:var(--ink); }
.price-card .muted{ color:var(--mute); }
.price-card.featured{ border-color: rgba(124,58,237,.35); box-shadow:0 16px 32px rgba(124,58,237,.12); position:relative; }
.price-card .tag{
  position:absolute; top:-12px; right:14px;
  background: linear-gradient(90deg, var(--fut-purple), var(--fut-cyan));
  color:#fff; font-weight:800; font-size:.8rem; padding:.25rem .5rem; border-radius:.5rem;
}
.feat-list li{ color:var(--mute); margin-bottom:.35rem; }

/* responsive tweaks */
@media (max-width: 991.98px){
  .svc2-hero{ text-align:center; }
  .out-stats{ justify-content:center; }
}

/* helpers */
.py-6{ padding-top:4.5rem; padding-bottom:4.5rem; }
.min-vh-60{ min-height:60vh; }
.text-ink{ color:var(--ink); }
.text-mute{ color:var(--mute); }
.text-white-80{ color:rgba(255,255,255,.88)!important; }

/* brand button */
.btn-gradient{
  color:#fff !important;
  background: linear-gradient(90deg, var(--fut-purple), var(--fut-cyan));
  border:none; border-radius:.85rem;
  box-shadow:0 10px 22px rgba(0,0,0,.12);
  transition: transform .15s ease, box-shadow .2s ease, opacity .2s ease;
}
.btn-gradient:hover{ transform: translateY(-2px); opacity:.97; box-shadow:0 14px 28px rgba(0,0,0,.16); }

/* ================== SECTION 1: HERO ================== */
.svc3-hero{
  position:relative; overflow:hidden;
  background: linear-gradient(135deg, var(--fut-purple), var(--fut-cyan));
  color:#fff;
}
.svc3-hero::before{
  content:""; position:absolute; inset:0;
  background-image: radial-gradient(rgba(255,255,255,.22) 1px, transparent 1px);
  background-size:28px 28px; opacity:.35; pointer-events:none;
}
.hero-illustration{ max-width:520px; margin:0 auto; }
.hero-badges{
  display:flex; flex-wrap:wrap; gap:.5rem 1rem; padding:0; margin:0; list-style:none;
}
.hero-badges li span{
  display:inline-block; background:rgba(255,255,255,.12); color:#fff;
  border:1px solid rgba(255,255,255,.35); border-radius:.75rem;
  padding:.4rem .7rem; font-weight:600;
}

/* ================== SECTION 2: WHY / USE CASES ================== */
.svc3-why{ background:#fff; }
.learn-list li{
  position:relative; padding-left:2rem; margin-bottom:.8rem; color:var(--mute);
}
.learn-list .tick{
  position:absolute; left:0; top:.15rem;
  width:1.25rem; height:1.25rem; border-radius:.4rem;
  background: linear-gradient(90deg, var(--fut-purple), var(--fut-cyan));
}
.learn-list .tick::after{
  content:""; position:absolute; inset:0;
  background:
    linear-gradient(#fff,#fff) 28% 55%/2px 6px no-repeat,
    linear-gradient(#fff,#fff) 46% 65%/2px 10px no-repeat;
  transform: rotate(-45deg);
}
.mini-card{
  background:#fff; border:1px solid var(--line); border-radius:16px;
  padding:1.1rem 1.1rem; transition: box-shadow .2s ease, transform .15s ease;
}
.mini-card:hover{ transform: translateY(-2px); box-shadow:0 12px 26px rgba(15,31,51,.08); }

/* ================== SECTION 3: PROGRAM ================== */
.svc3-program{ background: linear-gradient(180deg, rgba(124,58,237,.06), rgba(0,194,255,.06)); }
.prog-card{
  background:#fff; border:1px solid var(--line); border-radius:18px;
  padding:1.25rem 1.25rem 1.5rem; height:100%;
  transition: transform .15s ease, box-shadow .2s ease, border-color .2s ease;
}
.prog-card:hover{ transform: translateY(-3px); box-shadow:0 14px 28px rgba(15,31,51,.08); border-color:rgba(124,58,237,.25); }
.prog-badge{
  display:inline-block; font-weight:800; color:#0f2545;
  background: linear-gradient(180deg, rgba(124,58,237,.12), rgba(0,194,255,.12));
  border:1px solid var(--line); border-radius:.6rem; padding:.25rem .55rem; margin-bottom:.5rem;
}
.prog-list{ padding-left:1.2rem; color:var(--mute); }
.prog-list li{ margin-bottom:.35rem; }

/* ================== SECTION 4: ARCHITECTURE & SECURITY ================== */
.svc3-archsec{ background:#fff; }
.arch-card{
  background:#fff; border:1px solid var(--line); border-radius:16px;
  padding:1.25rem; box-shadow:0 10px 24px rgba(15,31,51,.06);
}

/* ================== SECTION 5: PRICING ================== */
.svc3-pricing{ background:#fff; }
.price-card{
  background:#fff; border:1px solid var(--line); border-radius:18px;
  padding:1.5rem; text-align:center; transition: transform .15s ease, box-shadow .2s ease;
}
.price-card:hover{ transform: translateY(-3px); box-shadow:0 16px 32px rgba(15,31,51,.08); }
.price-card .price{ font-size:2rem; font-weight:900; color:var(--ink); }
.price-card .muted{ color:var(--mute); }
.price-card.featured{ border-color: rgba(124,58,237,.35); box-shadow:0 16px 32px rgba(124,58,237,.12); position:relative; }
.price-card .tag{
  position:absolute; top:-12px; right:14px;
  background: linear-gradient(90deg, var(--fut-purple), var(--fut-cyan));
  color:#fff; font-weight:800; font-size:.8rem; padding:.25rem .5rem; border-radius:.5rem;
}
.feat-list li{ color:var(--mute); margin-bottom:.35rem; }

/* links */
.link-ink{ color:var(--ink); text-decoration: underline; text-decoration-color: rgba(15,31,51,.25); }
.link-ink:hover{ text-decoration-color: rgba(15,31,51,.6); }

/* responsive tweaks */
@media (max-width: 991.98px){
  .svc3-hero{ text-align:center; }
}

.py-6{ padding-top:4.5rem; padding-bottom:4.5rem; }
.text-ink{ color:var(--ink); }
.text-mute{ color:var(--mute); }

/* Brand buttons */
.btn-gradient{
  color:#fff !important;
  background:linear-gradient(90deg,var(--fut-purple),var(--fut-cyan));
  border:none; border-radius:.9rem;
  box-shadow:0 10px 22px rgba(0,0,0,.12);
  transition:transform .15s ease, box-shadow .2s ease, opacity .2s ease;
}
.btn-gradient:hover{ transform:translateY(-2px); opacity:.97; box-shadow:0 14px 28px rgba(0,0,0,.16); }
.btn-outline-ink{
  color:var(--ink); border:1px solid var(--line); background:#fff;
}
.btn-outline-ink:hover{ border-color:rgba(124,58,237,.4); color:var(--ink); }

/* HERO */
.pg-hero{
  background:#fff;
}
.pg-hero .btn{ min-width: 210px; }

/* GRID */
.pg-grid{ background:#fff; }

/* Audience card (tile) */
.aud-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:22px;
  padding:1.4rem 1.6rem 1.6rem;
  text-decoration:none;
  transition:transform .15s ease, box-shadow .2s ease, border-color .2s ease;
  box-shadow:0 8px 24px rgba(15,31,51,.05);
  display:flex; flex-direction:column;
}
.aud-card:hover{
  transform:translateY(-3px);
  box-shadow:0 16px 32px rgba(15,31,51,.08);
  border-color:rgba(124,58,237,.28);
}
.aud-pill{
  width:72px; height:72px; min-width:72px;
  display:flex; align-items:center; justify-content:center;
  border-radius:50%;
  font-weight:800; font-size:1.15rem; color:#1b2b48;
  background:linear-gradient(180deg,rgba(124,58,237,.12),rgba(0,194,255,.12));
  border:2px solid rgba(124,58,237,.35);
  margin-bottom:1rem;
}
.aud-title{
  color:var(--ink);
  font-weight:800;
  margin:0 0 .3rem;
  font-size:1.4rem;
}
.aud-text{
  color:var(--mute);
  margin:0;
}

/* CTA bottom */
.pg-cta{
  background:linear-gradient(180deg, rgba(124,58,237,.06), rgba(0,194,255,.06));
  border-top:1px solid var(--line);
}

/* Responsive tweaks */
@media (min-width:992px){
  .aud-title{ font-size:1.5rem; }
}

/* helpers */
.py-6{ padding-top:4.5rem; padding-bottom:4.5rem; }
.min-vh-60{ min-height:60vh; }
.text-ink{ color:var(--ink); }
.text-mute{ color:var(--mute); }
.text-white-80{ color:rgba(255,255,255,.88)!important; }

/* brand buttons */
.btn-gradient{
  color:#fff !important;
  background:linear-gradient(90deg,var(--fut-purple),var(--fut-cyan));
  border:none; border-radius:.9rem;
  box-shadow:0 10px 22px rgba(0,0,0,.12);
  transition:transform .15s ease, box-shadow .2s ease, opacity .2s ease;
}
.btn-gradient:hover{ transform:translateY(-2px); opacity:.97; box-shadow:0 14px 28px rgba(0,0,0,.16); }
.btn-outline-ink{
  color:var(--ink); background:#fff; border:1px solid var(--line); border-radius:.9rem;
}
.btn-outline-ink:hover{ border-color:rgba(124,58,237,.4); color:var(--ink); }

/* ================= HERO ================= */
.pgB-hero{
  background:linear-gradient(135deg,var(--fut-purple),var(--fut-cyan));
  position:relative; overflow:hidden; color:#fff;
}
.pgB-hero::before{
  content:""; position:absolute; inset:0;
  background-image: radial-gradient(rgba(255,255,255,.22) 1px, transparent 1px);
  background-size:28px 28px; opacity:.33; pointer-events:none;
}
.hero-illustration{ max-width:520px; margin:0 auto; }
.hero-badges{ display:flex; gap:.6rem .9rem; flex-wrap:wrap; padding:0; margin:0; list-style:none; }
.hero-badges li span{
  display:inline-block; padding:.42rem .7rem; border-radius:.75rem;
  background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.35); font-weight:600;
}

/* ================ ABOUT mini-cards & list ================ */
.learn-list li{
  position:relative; padding-left:2rem; margin-bottom:.8rem; color:var(--mute);
}
.learn-list .tick{
  position:absolute; left:0; top:.15rem;
  width:1.25rem; height:1.25rem; border-radius:.4rem;
  background:linear-gradient(90deg,var(--fut-purple),var(--fut-cyan));
}
.learn-list .tick::after{
  content:""; position:absolute; inset:0;
  background:
    linear-gradient(#fff,#fff) 28% 55%/2px 6px no-repeat,
    linear-gradient(#fff,#fff) 46% 65%/2px 10px no-repeat;
  transform:rotate(-45deg);
}
.mini-card{
  background:#fff; border:1px solid var(--line); border-radius:16px;
  padding:1.15rem 1.15rem; transition:box-shadow .2s ease, transform .15s ease;
}
.mini-card:hover{ transform:translateY(-2px); box-shadow:0 12px 26px rgba(15,31,51,.08); }

/* ================= PATH / TIMELINE ================= */
.pgB-path{ background:linear-gradient(180deg,rgba(124,58,237,.06),rgba(0,194,255,.06)); }
.path-step{
  position:relative; background:#fff; border:1px solid var(--line); border-radius:16px;
  padding:1.2rem 1.2rem 1.2rem 4.2rem; box-shadow:0 8px 22px rgba(15,31,51,.05);
}
.path-step + .path-step{ margin-top:.4rem; }
.path-step .step-dot{
  position:absolute; left:1.2rem; top:1.2rem; width:2.4rem; height:2.4rem;
  border-radius:50%; display:flex; align-items:center; justify-content:center;
  color:#0f2545; font-weight:800;
  background:linear-gradient(180deg,rgba(124,58,237,.12),rgba(0,194,255,.12));
  border:2px solid rgba(124,58,237,.35);
}


/* ================= COURSE CARDS ================= */
.course-card{
  background:#fff; border:1px solid var(--line); border-radius:18px;
  padding:1.3rem 1.3rem 1.4rem; transition:transform .15s ease, box-shadow .2s ease, border-color .2s ease;
  box-shadow:0 10px 24px rgba(15,31,51,.05);
}
.course-card:hover{ transform:translateY(-3px); box-shadow:0 16px 32px rgba(15,31,51,.08); border-color:rgba(124,58,237,.28); }
.badge-grad{
  display:inline-block; font-weight:800; font-size:.8rem; margin-bottom:.5rem;
  color:#0f2545; border:1px solid var(--line); border-radius:.6rem; padding:.25rem .5rem;
  background:linear-gradient(180deg,rgba(124,58,237,.12),rgba(0,194,255,.12));
}

/* ================= FAQ (pure HTML details/summary) ================= */
.pgB-faq{ background:#fff; }
.faq-item{
  background:#fff; border:1px solid var(--line); border-radius:14px; padding:1rem 1.1rem; margin-bottom:.8rem;
}
.faq-item summary{
  cursor:pointer; list-style:none; color:var(--ink); font-weight:700;
}
.faq-item summary::-webkit-details-marker{ display:none; }
.faq-item[open] summary{ color:#0e2343; }
.faq-item .faq-body{ color:var(--mute); padding-top:.5rem; }

/* ================= CTA ================= */
.pgB-cta{
  background:linear-gradient(180deg,rgba(124,58,237,.06),rgba(0,194,255,.06));
  border-top:1px solid var(--line);
}

/* responsive */
@media (max-width: 991.98px){
  .pgB-hero{ text-align:center; }
}

/* helpers */
.py-6{ padding-top:4.5rem; padding-bottom:4.5rem; }
.min-vh-60{ min-height:60vh; }
.text-ink{ color:var(--ink); }
.text-mute{ color:var(--mute); }
.text-white-80{ color:rgba(255,255,255,.88)!important; }

/* brand buttons */
.btn-gradient{
  color:#fff !important;
  background:linear-gradient(90deg,var(--fut-purple),var(--fut-cyan));
  border:none; border-radius:.9rem;
  box-shadow:0 10px 22px rgba(0,0,0,.12);
  transition:transform .15s ease, box-shadow .2s ease, opacity .2s ease;
}
.btn-gradient:hover{ transform:translateY(-2px); opacity:.97; box-shadow:0 14px 28px rgba(0,0,0,.16); }
.btn-outline-ink{
  color:var(--ink); background:#fff; border:1px solid var(--line); border-radius:.9rem;
}
.btn-outline-ink:hover{ border-color:rgba(124,58,237,.4); color:var(--ink); }

/* ================= HERO ================= */
.pgP-hero{
  background:linear-gradient(135deg,var(--fut-purple),var(--fut-cyan));
  position:relative; overflow:hidden; color:#fff;
}
.pgP-hero::before{
  content:""; position:absolute; inset:0;
  background-image: radial-gradient(rgba(255,255,255,.22) 1px, transparent 1px);
  background-size:28px 28px; opacity:.33; pointer-events:none;
}
.hero-illustration{ max-width:520px; margin:0 auto; }
.hero-badges{ display:flex; gap:.6rem .9rem; flex-wrap:wrap; padding:0; margin:0; list-style:none; }
.hero-badges li span{
  display:inline-block; padding:.42rem .7rem; border-radius:.75rem;
  background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.35); font-weight:600;
}

/* ================ ABOUT mini-cards & list ================ */
.learn-list li{
  position:relative; padding-left:2rem; margin-bottom:.8rem; color:var(--mute);
}
.learn-list .tick{
  position:absolute; left:0; top:.15rem;
  width:1.25rem; height:1.25rem; border-radius:.4rem;
  background:linear-gradient(90deg,var(--fut-purple),var(--fut-cyan));
}
.learn-list .tick::after{
  content:""; position:absolute; inset:0;
  background:
    linear-gradient(#fff,#fff) 28% 55%/2px 6px no-repeat,
    linear-gradient(#fff,#fff) 46% 65%/2px 10px no-repeat;
  transform:rotate(-45deg);
}
.mini-card{
  background:#fff; border:1px solid var(--line); border-radius:16px;
  padding:1.15rem 1.15rem; transition:box-shadow .2s ease, transform .15s ease;
}
.mini-card:hover{ transform:translateY(-2px); box-shadow:0 12px 26px rgba(15,31,51,.08); }

/* ================= PATH / TIMELINE ================= */
.pgP-path{ background:linear-gradient(180deg,rgba(124,58,237,.06),rgba(0,194,255,.06)); }
.path-step{
  position:relative; background:#fff; border:1px solid var(--line); border-radius:16px;
  padding:1.2rem 1.2rem 1.2rem 4.2rem; box-shadow:0 8px 22px rgba(15,31,51,.05);
}
.path-step + .path-step{ margin-top:.4rem; }
.path-step .step-dot{
  position:absolute; left:1.2rem; top:1.2rem; width:2.4rem; height:2.4rem;
  border-radius:50%; display:flex; align-items:center; justify-content:center;
  color:#0f2545; font-weight:800;
  background:linear-gradient(180deg,rgba(124,58,237,.12),rgba(0,194,255,.12));
  border:2px solid rgba(124,58,237,.35);
}

/* ================= COURSE CARDS ================= */
.course-card{
  background:#fff; border:1px solid var(--line); border-radius:18px;
  padding:1.3rem 1.3rem 1.4rem; transition:transform .15s ease, box-shadow .2s ease, border-color .2s ease;
  box-shadow:0 10px 24px rgba(15,31,51,.05);
}
.course-card:hover{ transform:translateY(-3px); box-shadow:0 16px 32px rgba(15,31,51,.08); border-color:rgba(124,58,237,.28); }
.badge-grad{
  display:inline-block; font-weight:800; font-size:.8rem; margin-bottom:.5rem;
  color:#0f2545; border:1px solid var(--line); border-radius:.6rem; padding:.25rem .5rem;
  background:linear-gradient(180deg,rgba(124,58,237,.12),rgba(0,194,255,.12));
}

/* ================= FAQ ================= */
.pgP-faq{ background:#fff; }
.faq-item{
  background:#fff; border:1px solid var(--line); border-radius:14px; padding:1rem 1.1rem; margin-bottom:.8rem;
}
.faq-item summary{
  cursor:pointer; list-style:none; color:var(--ink); font-weight:700;
}
.faq-item summary::-webkit-details-marker{ display:none; }
.faq-item[open] summary{ color:#0e2343; }
.faq-item .faq-body{ color:var(--mute); padding-top:.5rem; }

/* ================= CTA ================= */
.pgP-cta{
  background:linear-gradient(180deg,rgba(124,58,237,.06),rgba(0,194,255,.06));
  border-top:1px solid var(--line);
}

/* responsive */
@media (max-width: 991.98px){
  .pgP-hero{ text-align:center; }
}

/* helpers */
.py-6{ padding-top:4.5rem; padding-bottom:4.5rem; }
.min-vh-60{ min-height:60vh; }
.text-ink{ color:var(--ink); }
.text-mute{ color:var(--mute); }
.text-white-80{ color:rgba(255,255,255,.88)!important; }

/* brand buttons */
.btn-gradient{
  color:#fff !important;
  background:linear-gradient(90deg,var(--fut-purple),var(--fut-cyan));
  border:none; border-radius:.9rem;
  box-shadow:0 10px 22px rgba(0,0,0,.12);
  transition:transform .15s ease, box-shadow .2s ease, opacity .2s ease;
}
.btn-gradient:hover{ transform:translateY(-2px); opacity:.97; box-shadow:0 14px 28px rgba(0,0,0,.16); }
.btn-outline-ink{
  color:var(--ink); background:#fff; border:1px solid var(--line); border-radius:.9rem;
}
.btn-outline-ink:hover{ border-color:rgba(124,58,237,.4); color:var(--ink); }

/* ================ HERO ================ */
.pgBiz-hero{
  background:linear-gradient(135deg,var(--fut-purple),var(--fut-cyan));
  position:relative; overflow:hidden; color:#fff;
}
.pgBiz-hero::before{
  content:""; position:absolute; inset:0;
  background-image: radial-gradient(rgba(255,255,255,.22) 1px, transparent 1px);
  background-size:28px 28px; opacity:.33; pointer-events:none;
}
.hero-illustration{ max-width:520px; margin:0 auto; }
.hero-badges{ display:flex; gap:.6rem .9rem; flex-wrap:wrap; padding:0; margin:0; list-style:none; }
.hero-badges li span{
  display:inline-block; padding:.42rem .7rem; border-radius:.75rem;
  background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.35); font-weight:600;
}

/* =============== LIST + MINI CARDS =============== */
.learn-list li{
  position:relative; padding-left:2rem; margin-bottom:.8rem; color:var(--mute);
}
.learn-list .tick{
  position:absolute; left:0; top:.15rem;
  width:1.25rem; height:1.25rem; border-radius:.4rem;
  background:linear-gradient(90deg,var(--fut-purple),var(--fut-cyan));
}
.learn-list .tick::after{
  content:""; position:absolute; inset:0;
  background:
    linear-gradient(#fff,#fff) 28% 55%/2px 6px no-repeat,
    linear-gradient(#fff,#fff) 46% 65%/2px 10px no-repeat;
  transform:rotate(-45deg);
}
.mini-card{
  background:#fff; border:1px solid var(--line); border-radius:16px;
  padding:1.15rem 1.15rem; transition:box-shadow .2s ease, transform .15s ease;
}
.mini-card:hover{ transform:translateY(-2px); box-shadow:0 12px 26px rgba(15,31,51,.08); }

/* =============== TIMELINE =============== */
.pgBiz-path{ background:linear-gradient(180deg,rgba(124,58,237,.06),rgba(0,194,255,.06)); }
.path-step{
  position:relative; background:#fff; border:1px solid var(--line); border-radius:16px;
  padding:1.2rem 1.2rem 1.2rem 4.2rem; box-shadow:0 8px 22px rgba(15,31,51,.05);
}
.path-step + .path-step{ margin-top:.4rem; }
.path-step .step-dot{
  position:absolute; left:1.2rem; top:1.2rem; width:2.4rem; height:2.4rem;
  border-radius:50%; display:flex; align-items:center; justify-content:center;
  color:#0f2545; font-weight:800;
  background:linear-gradient(180deg,rgba(124,58,237,.12),rgba(0,194,255,.12));
  border:2px solid rgba(124,58,237,.35);
}

/* =============== PACKAGES =============== */
.pack-card{
  background:#fff; border:1px solid var(--line); border-radius:18px;
  padding:1.35rem; box-shadow:0 10px 24px rgba(15,31,51,.06);
  transition:transform .15s ease, box-shadow .2s ease, border-color .2s ease;
  position:relative;
}
.pack-card:hover{ transform:translateY(-3px); box-shadow:0 16px 32px rgba(15,31,51,.1); border-color:rgba(124,58,237,.28); }
.pack-tag{
  position:absolute; top:-12px; right:14px;
  background:#e9eefc; color:#10233f; font-weight:800; font-size:.8rem;
  padding:.25rem .55rem; border-radius:.5rem; border:1px solid var(--line);
}
.pack-tag.grad{
  background:linear-gradient(90deg,var(--fut-purple),var(--fut-cyan));
  color:#fff; border:none;
}
.feat-list{ margin:0 0 1.1rem; padding-left:1.1rem; color:var(--mute); }
.feat-list li{ margin-bottom:.35rem; }

/* =============== FAQ =============== */
.pgBiz-faq{ background:#fff; }
.faq-item{
  background:#fff; border:1px solid var(--line); border-radius:14px; padding:1rem 1.1rem; margin-bottom:.8rem;
}
.faq-item summary{
  cursor:pointer; list-style:none; color:var(--ink); font-weight:700;
}
.faq-item summary::-webkit-details-marker{ display:none; }
.faq-item[open] summary{ color:#0e2343; }
.faq-item .faq-body{ color:var(--mute); padding-top:.5rem; }

/* =============== CTA =============== */
.pgBiz-cta{
  background:linear-gradient(180deg,rgba(124,58,237,.06),rgba(0,194,255,.06));
  border-top:1px solid var(--line);
}

/* responsive */
@media (max-width: 991.98px){
  .pgBiz-hero{ text-align:center; }
}

/* helpers */
.py-6{ padding-top:4.5rem; padding-bottom:4.5rem; }
.min-vh-60{ min-height:60vh; }
.text-ink{ color:var(--ink); }
.text-mute{ color:var(--mute); }
.text-white-80{ color:rgba(255,255,255,.88)!important; }

/* brand buttons */
.btn-gradient{
  color:#fff !important;
  background:linear-gradient(90deg,var(--fut-purple),var(--fut-cyan));
  border:none; border-radius:.9rem;
  box-shadow:0 10px 22px rgba(0,0,0,.12);
  transition:transform .15s ease, box-shadow .2s ease, opacity .2s ease;
}
.btn-gradient:hover{ transform:translateY(-2px); opacity:.97; box-shadow:0 14px 28px rgba(0,0,0,.16); }
.btn-outline-ink{
  color:var(--ink); background:#fff; border:1px solid var(--line); border-radius:.9rem;
}
.btn-outline-ink:hover{ border-color:rgba(124,58,237,.4); color:var(--ink); }

/* ================= HERO ================= */
.pgU-hero{
  background:linear-gradient(135deg,var(--fut-purple),var(--fut-cyan));
  position:relative; overflow:hidden; color:#fff;
}
.pgU-hero::before{
  content:""; position:absolute; inset:0;
  background-image: radial-gradient(rgba(255,255,255,.22) 1px, transparent 1px);
  background-size:28px 28px; opacity:.33; pointer-events:none;
}
.hero-illustration{ max-width:520px; margin:0 auto; }
.hero-badges{ display:flex; gap:.6rem .9rem; flex-wrap:wrap; padding:0; margin:0; list-style:none; }
.hero-badges li span{
  display:inline-block; padding:.42rem .7rem; border-radius:.75rem;
  background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.35); font-weight:600;
}

/* ================ LIST & MINI CARDS ================ */
.learn-list li{
  position:relative; padding-left:2rem; margin-bottom:.8rem; color:var(--mute);
}
.learn-list .tick{
  position:absolute; left:0; top:.15rem;
  width:1.25rem; height:1.25rem; border-radius:.4rem;
  background:linear-gradient(90deg,var(--fut-purple),var(--fut-cyan));
}
.learn-list .tick::after{
  content:""; position:absolute; inset:0;
  background:
    linear-gradient(#fff,#fff) 28% 55%/2px 6px no-repeat,
    linear-gradient(#fff,#fff) 46% 65%/2px 10px no-repeat;
  transform:rotate(-45deg);
}
.mini-card{
  background:#fff; border:1px solid var(--line); border-radius:16px;
  padding:1.15rem 1.15rem; transition:box-shadow .2s ease, transform .15s ease;
}
.mini-card:hover{ transform:translateY(-2px); box-shadow:0 12px 26px rgba(15,31,51,.08); }

/* ================= PATH / TIMELINE ================= */
.pgU-path{ background:linear-gradient(180deg,rgba(124,58,237,.06),rgba(0,194,255,.06)); }
.path-step{
  position:relative; background:#fff; border:1px solid var(--line); border-radius:16px;
  padding:1.2rem 1.2rem 1.2rem 4.2rem; box-shadow:0 8px 22px rgba(15,31,51,.05);
}
.path-step + .path-step{ margin-top:.4rem; }
.path-step .step-dot{
  position:absolute; left:1.2rem; top:1.2rem; width:2.4rem; height:2.4rem;
  border-radius:50%; display:flex; align-items:center; justify-content:center;
  color:#0f2545; font-weight:800;
  background:linear-gradient(180deg,rgba(124,58,237,.12),rgba(0,194,255,.12));
  border:2px solid rgba(124,58,237,.35);
}

/* ================= FORMATS / PACKS ================= */
.format-card{
  background:#fff; border:1px solid var(--line); border-radius:18px;
  padding:1.35rem; box-shadow:0 10px 24px rgba(15,31,51,.06);
  transition:transform .15s ease, box-shadow .2s ease, border-color .2s ease;
  position:relative;
}
.format-card:hover{ transform:translateY(-3px); box-shadow:0 16px 32px rgba(15,31,51,.1); border-color:rgba(124,58,237,.28); }
.format-tag{
  position:absolute; top:-12px; right:14px;
  background:#e9eefc; color:#10233f; font-weight:800; font-size:.8rem;
  padding:.25rem .55rem; border-radius:.5rem; border:1px solid var(--line);
}
.format-tag.grad{
  background:linear-gradient(90deg,var(--fut-purple),var(--fut-cyan));
  color:#fff; border:none;
}
.feat-list{ margin:0 0 1.1rem; padding-left:1.1rem; color:var(--mute); }
.feat-list li{ margin-bottom:.35rem; }

/* ================= FAQ ================= */
.pgU-faq{ background:#fff; }
.faq-item{
  background:#fff; border:1px solid var(--line); border-radius:14px; padding:1rem 1.1rem; margin-bottom:.8rem;
}
.faq-item summary{
  cursor:pointer; list-style:none; color:var(--ink); font-weight:700;
}
.faq-item summary::-webkit-details-marker{ display:none; }
.faq-item[open] summary{ color:#0e2343; }
.faq-item .faq-body{ color:var(--mute); padding-top:.5rem; }

/* ================= CTA ================= */
.pgU-cta{
  background:linear-gradient(180deg,rgba(124,58,237,.06),rgba(0,194,255,.06));
  border-top:1px solid var(--line);
}

/* responsive */
@media (max-width: 991.98px){
  .pgU-hero{ text-align:center; }
}

/* helpers */
.py-6{ padding-top:4.5rem; padding-bottom:4.5rem; }
.min-vh-60{ min-height:60vh; }
.text-ink{ color:var(--ink); }
.text-mute{ color:var(--mute); }
.text-white-80{ color:rgba(255,255,255,.88)!important; }

/* brand buttons */
.btn-gradient{
  color:#fff !important;
  background:linear-gradient(90deg,var(--fut-purple),var(--fut-cyan));
  border:none; border-radius:.9rem;
  box-shadow:0 10px 22px rgba(0,0,0,.12);
  transition:transform .15s ease, box-shadow .2s ease, opacity .2s ease;
}
.btn-gradient:hover{ transform:translateY(-2px); opacity:.97; box-shadow:0 14px 28px rgba(0,0,0,.16); }
.btn-outline-ink{
  color:var(--ink); background:#fff; border:1px solid var(--line); border-radius:.9rem;
}
.btn-outline-ink:hover{ border-color:rgba(124,58,237,.4); color:var(--ink); }

/* ================= HERO ================= */
.ab-hero{
  background:linear-gradient(135deg,var(--fut-purple),var(--fut-cyan));
  position:relative; overflow:hidden; color:#fff;
}
.ab-hero::before{
  content:""; position:absolute; inset:0;
  background-image: radial-gradient(rgba(255,255,255,.22) 1px, transparent 1px);
  background-size:28px 28px; opacity:.33; pointer-events:none;
}
.hero-illustration{ max-width:520px; margin:0 auto; }

/* =============== LIST + METRICS =============== */
.learn-list li{
  position:relative; padding-left:2rem; margin-bottom:.8rem; color:var(--mute);
}
.learn-list .tick{
  position:absolute; left:0; top:.15rem;
  width:1.25rem; height:1.25rem; border-radius:.4rem;
  background:linear-gradient(90deg,var(--fut-purple),var(--fut-cyan));
}
.learn-list .tick::after{
  content:""; position:absolute; inset:0;
  background:
    linear-gradient(#fff,#fff) 28% 55%/2px 6px no-repeat,
    linear-gradient(#fff,#fff) 46% 65%/2px 10px no-repeat;
  transform:rotate(-45deg);
}
.metric-card{
  background:#fff; border:1px solid var(--line); border-radius:14px;
  padding:1rem 1rem; text-align:center;
  box-shadow:0 10px 22px rgba(15,31,51,.06);
}

/* =============== VALEURS =============== */
.ab-values{ background:linear-gradient(180deg,rgba(124,58,237,.06),rgba(0,194,255,.06)); }
.value-card{
  background:#fff; border:1px solid var(--line); border-radius:16px;
  padding:1.2rem; transition:transform .15s ease, box-shadow .2s ease;
}
.value-card:hover{ transform:translateY(-3px); box-shadow:0 16px 32px rgba(15,31,51,.08); }

/* =============== TIMELINE =============== */
.timeline{ position:relative; max-width:940px; margin:0 auto; }
.tl-item{ position:relative; background:#fff; border:1px solid var(--line); border-radius:16px;
  padding:1.2rem 1.2rem 1.2rem 4.2rem; margin-bottom:.9rem; box-shadow:0 8px 22px rgba(15,31,51,.05); }
.tl-item .tl-dot{
  position:absolute; left:1.2rem; top:1.2rem; width:2.4rem; height:2.4rem; border-radius:50%;
  display:flex; align-items:center; justify-content:center; font-weight:800; color:#0f2545;
  background:linear-gradient(180deg,rgba(124,58,237,.12),rgba(0,194,255,.12));
  border:2px solid rgba(124,58,237,.35);
}

/* =============== TEAM =============== */
.ab-team{ background:#fff; }
.member-card{
  background:#fff; border:1px solid var(--line); border-radius:16px; padding:1rem;
  transition:transform .15s ease, box-shadow .2s ease; height:100%;
}
.member-card:hover{ transform:translateY(-3px); box-shadow:0 16px 32px rgba(15,31,51,.08); }
.member-photo{
  width:100%; aspect-ratio:1/1; object-fit:cover; border-radius:14px; background:#eef3ff;
}

/* =============== PARTNERS =============== */
.partner-logo{ max-height:48px; opacity:.9; filter:grayscale(100%); }
.partner-logo:hover{ filter:none; opacity:1; }

/* =============== CTA =============== */
.ab-cta{
  background:linear-gradient(180deg,rgba(124,58,237,.06),rgba(0,194,255,.06));
  border-top:1px solid var(--line);
}

/* responsive */
@media (max-width: 991.98px){
  .ab-hero{ text-align:center; }
}

.py-6{ padding-top:4.5rem; padding-bottom:4.5rem; }
.min-vh-60{ min-height:60vh; }
.text-ink{ color:var(--ink); }
.text-mute{ color:var(--mute); }
.text-white-80{ color:rgba(255,255,255,.88)!important; }

/* Buttons */
.btn-gradient{
  color:#fff !important;
  background:linear-gradient(90deg,var(--fut-purple),var(--fut-cyan));
  border:none; border-radius:.9rem;
  box-shadow:0 10px 22px rgba(0,0,0,.12);
  transition:transform .15s ease, box-shadow .2s ease, opacity .2s ease;
}
.btn-gradient:hover{ transform:translateY(-2px); opacity:.97; box-shadow:0 14px 28px rgba(0,0,0,.16); }
.btn-outline-ink{
  color:var(--ink); background:#fff; border:1px solid var(--line); border-radius:.9rem;
}
.btn-outline-ink:hover{ border-color:rgba(124,58,237,.4); color:var(--ink); }

/* HERO */
.cr-hero{
  background:linear-gradient(135deg,var(--fut-purple),var(--fut-cyan));
  position:relative; overflow:hidden; color:#fff;
}
.cr-hero::before{
  content:""; position:absolute; inset:0;
  background-image: radial-gradient(rgba(255,255,255,.22) 1px, transparent 1px);
  background-size:28px 28px; opacity:.33; pointer-events:none;
}
.hero-illustration{ max-width:520px; margin:0 auto; }
.hero-badges{ display:flex; gap:.6rem .9rem; flex-wrap:wrap; padding:0; margin:0; list-style:none; }
.hero-badges li span{
  display:inline-block; padding:.42rem .7rem; border-radius:.75rem;
  background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.35); font-weight:600;
}

/* BENEFITS */
.benefit-card{
  background:#fff; border:1px solid var(--line); border-radius:16px;
  padding:1.2rem; transition:transform .15s ease, box-shadow .2s ease;
}
.benefit-card:hover{ transform:translateY(-3px); box-shadow:0 16px 32px rgba(15,31,51,.08); }

/* ROLES */
.cr-roles{ background:linear-gradient(180deg,rgba(124,58,237,.06),rgba(0,194,255,.06)); }
.role-card{
  background:#fff; border:1px solid var(--line); border-radius:18px;
  padding:1.35rem; box-shadow:0 10px 24px rgba(15,31,51,.06);
  display:flex; flex-direction:column; height:100%;
  transition:transform .15s ease, box-shadow .2s ease, border-color .2s ease;
}
.role-card:hover{ transform:translateY(-3px); box-shadow:0 16px 32px rgba(15,31,51,.1); border-color:rgba(124,58,237,.28); }
.role-head .badge{ border-radius:.6rem; }
.badge.bg-soft{ background:#eef3ff; color:#1b2b49; }
.badge.grad{
  color:#fff; background:linear-gradient(90deg,var(--fut-purple),var(--fut-cyan));
}
.role-list{ margin:0 0 1.1rem; padding-left:1.1rem; color:var(--mute); }
.role-list li{ margin-bottom:.35rem; }

/* CULTURE mini cards */
.mini-card{
  background:#fff; border:1px solid var(--line); border-radius:16px;
  padding:1.15rem 1.15rem; transition:box-shadow .2s ease, transform .15s ease;
}
.mini-card:hover{ transform:translateY(-2px); box-shadow:0 12px 26px rgba(15,31,51,.08); }

/* PROCESS timeline */
.cr-process{ background:#fff; }
.path-step{
  position:relative; background:#fff; border:1px solid var(--line); border-radius:16px;
  padding:1.2rem 1.2rem 1.2rem 4.2rem; box-shadow:0 8px 22px rgba(15,31,51,.05);
}
.path-step + .path-step{ margin-top:.4rem; }
.path-step .step-dot{
  position:absolute; left:1.2rem; top:1.2rem; width:2.4rem; height:2.4rem;
  border-radius:50%; display:flex; align-items:center; justify-content:center;
  color:#0f2545; font-weight:800;
  background:linear-gradient(180deg,rgba(124,58,237,.12),rgba(0,194,255,.12));
  border:2px solid rgba(124,58,237,.35);
}

/* FAQ */
.cr-faq .faq-item{
  background:#fff; border:1px solid var(--line); border-radius:14px; padding:1rem 1.1rem; margin-bottom:.8rem;
}
.faq-item summary{ cursor:pointer; list-style:none; color:var(--ink); font-weight:700; }
.faq-item summary::-webkit-details-marker{ display:none; }
.faq-item[open] summary{ color:#0e2343; }
.faq-item .faq-body{ color:var(--mute); padding-top:.5rem; }

/* CTA */
.cr-cta{
  background:linear-gradient(180deg,rgba(124,58,237,.06),rgba(0,194,255,.06));
  border-top:1px solid var(--line);
}

/* responsive */
@media (max-width: 991.98px){
  .cr-hero{ text-align:center; }
}

.text-ink{color:var(--ink);}
.text-mute{color:var(--mute);}
a{color:var(--fut-purple);}
a:hover{text-decoration:none;color:var(--fut-cyan);}
ul{margin-bottom:1rem;}
li{margin-bottom:.3rem;}

.legal-hero{
  background:linear-gradient(135deg,var(--fut-purple),var(--fut-cyan));
}

/* helpers */
.py-6{ padding-top:4.5rem; padding-bottom:4.5rem; }
.min-vh-60{ min-height:30vh; }
.text-ink{ color:var(--ink); }
.text-mute{ color:var(--mute); }
.text-white-80{ color:rgba(255,255,255,.88)!important; }

/* brand buttons */
.btn-gradient{
  color:#fff !important;
  background:linear-gradient(90deg,var(--fut-purple),var(--fut-cyan));
  border:none; border-radius:.9rem;
  box-shadow:0 10px 22px rgba(0,0,0,.12);
  transition:transform .15s ease, box-shadow .2s ease, opacity .2s ease;
}
.btn-gradient:hover{ transform:translateY(-2px); opacity:.97; box-shadow:0 14px 28px rgba(0,0,0,.16); }
.btn-outline-ink{
  color:var(--ink); background:#fff; border:1px solid var(--line); border-radius:.9rem;
}
.btn-outline-ink:hover{ border-color:rgba(124,58,237,.4); color:var(--ink); }

/* HERO */
.bm-hero{
  background:linear-gradient(135deg,var(--fut-purple),var(--fut-cyan));
  position:relative; overflow:hidden; color:#fff;
}
.bm-hero::before{
  content:""; position:absolute; inset:0;
  background-image: radial-gradient(rgba(255,255,255,.22) 1px, transparent 1px);
  background-size:28px 28px; opacity:.33; pointer-events:none;
}
.hero-illustration{ max-width:520px; margin:0 auto; }

/* LIST & MINI CARDS */
.learn-list li{ position:relative; padding-left:2rem; margin-bottom:.8rem; color:var(--mute); }
.learn-list .tick{
  position:absolute; left:0; top:.15rem; width:1.25rem; height:1.25rem; border-radius:.4rem;
  background:linear-gradient(90deg,var(--fut-purple),var(--fut-cyan));
}
.learn-list .tick::after{
  content:""; position:absolute; inset:0;
  background:
    linear-gradient(#fff,#fff) 28% 55%/2px 6px no-repeat,
    linear-gradient(#fff,#fff) 46% 65%/2px 10px no-repeat;
  transform:rotate(-45deg);
}
.mini-card{
  background:#fff; border:1px solid var(--line); border-radius:16px;
  padding:1.15rem; transition:box-shadow .2s ease, transform .15s ease;
}
.mini-card:hover{ transform:translateY(-2px); box-shadow:0 12px 26px rgba(15,31,51,.08); }

/* REVENUE */
.bm-rev{ background:linear-gradient(180deg,rgba(124,58,237,.06),rgba(0,194,255,.06)); }
.rev-card{
  background:#fff; border:1px solid var(--line); border-radius:16px; padding:1.15rem;
  box-shadow:0 8px 22px rgba(15,31,51,.05);
}

/* PRICING PACKS */
.pack-card{
  background:#fff; border:1px solid var(--line); border-radius:18px;
  padding:1.35rem; box-shadow:0 10px 24px rgba(15,31,51,.06);
  transition:transform .15s ease, box-shadow .2s ease, border-color .2s ease; position:relative;
}
.pack-card:hover{ transform:translateY(-3px); box-shadow:0 16px 32px rgba(15,31,51,.1); border-color:rgba(124,58,237,.28); }
.pack-tag{
  position:absolute; top:-12px; right:14px;
  background:#e9eefc; color:#10233f; font-weight:800; font-size:.8rem;
  padding:.25rem .55rem; border-radius:.5rem; border:1px solid var(--line);
}
.pack-tag.grad{ background:linear-gradient(90deg,var(--fut-purple),var(--fut-cyan)); color:#fff; border:none; }
.feat-list{ margin:0 0 1.1rem; padding-left:1.1rem; color:var(--mute); }
.feat-list li{ margin-bottom:.35rem; }

/* UNIT ECONOMICS TABLE */
.bm-table thead th{ background:#f7f9ff; border-bottom:1px solid var(--line); color:var(--ink); }
.bm-table tbody td{ color:#2a3a55; }
.bm-ue{ background:#fff; }

/* COSTS */
.cost-card{
  background:#fff; border:1px solid var(--line); border-radius:16px; padding:1.15rem;
}

/* ROADMAP (timeline) */
.bm-road{ background:linear-gradient(180deg,rgba(124,58,237,.06),rgba(0,194,255,.06)); }
.path-step{
  position:relative; background:#fff; border:1px solid var(--line); border-radius:16px;
  padding:1.2rem 1.2rem 1.2rem 4.2rem; box-shadow:0 8px 22px rgba(15,31,51,.05);
}
.path-step + .path-step{ margin-top:.4rem; }
.path-step .step-dot{
  position:absolute; left:1.2rem; top:1.2rem; width:2.6rem; height:2.6rem; border-radius:50%;
  display:flex; align-items:center; justify-content:center; font-weight:800; color:#0f2545;
  background:linear-gradient(180deg,rgba(124,58,237,.12),rgba(0,194,255,.12));
  border:2px solid rgba(124,58,237,.35);
}

/* TRUST */
.trust-card{
  background:#fff; border:1px solid var(--line); border-radius:16px; padding:1.15rem;
}

/* CTA */
.bm-cta{
  background:linear-gradient(180deg,rgba(124,58,237,.06),rgba(0,194,255,.06));
  border-top:1px solid var(--line);
}

/* responsive */
@media (max-width: 991.98px){
  .bm-hero{ text-align:center; }
}
