:root{
  --aa-bg:#0b1020;
  --aa-surface:rgba(255,255,255,.06);
  --aa-surface-2:rgba(255,255,255,.10);
  --aa-border:rgba(255,255,255,.14);
  --aa-text:#0d1220;
  --aa-accent:#7c3aed;
  --aa-accent-2:#22c55e;
  --aa-accent-3:#06b6d4;
  --aa-warn:#f59e0b;
  --aa-grad:linear-gradient(135deg,var(--aa-accent),var(--aa-accent-3),var(--aa-accent-2));
  --aa-grad-2:linear-gradient(135deg,#ff4d6d,#7c3aed,#06b6d4);
  --aa-grad-3:linear-gradient(135deg,#22c55e,#06b6d4,#7c3aed);
}

html,body{height:100%;}
body{
  font-size:18px;
  background:#f7f8ff;
  color:var(--aa-text);
}

a{color:#4f46e5;}
a:hover{color:#3730a3;}

.aa-navbar{
  background:rgba(10,14,28,.78);
  backdrop-filter: blur(10px);
  border-bottom:1px solid rgba(255,255,255,.10);
}
.navbar .nav-link{color:rgba(255,255,255,.85);}
.navbar .nav-link:hover{color:#fff;}
.navbar .btn-gradient{white-space:nowrap;}

.btn-gradient{
  color:#0b1020;
  border:0;
  background:var(--aa-grad);
  box-shadow:0 12px 35px rgba(124,58,237,.25);
}
.btn-gradient:hover{
  color:#0b1020;
  filter:saturate(1.1) brightness(1.03);
  box-shadow:0 14px 38px rgba(6,182,212,.25);
}

.aa-hero{
  background:
    radial-gradient(900px 450px at 10% 10%, rgba(124,58,237,.55), transparent 60%),
    radial-gradient(900px 450px at 90% 20%, rgba(6,182,212,.40), transparent 60%),
    radial-gradient(900px 450px at 55% 95%, rgba(34,197,94,.30), transparent 60%),
    linear-gradient(180deg, #0a0e1c 0%, #0b1020 60%, #0b1020 100%);
  padding-top:1.25rem;
  padding-bottom:1.25rem;
  position:relative;
  overflow:hidden;
}

.text-white-75{color:rgba(255,255,255,.78)!important;}

.aa-pill{
  display:inline-flex;
  align-items:center;
  gap:.55rem;
  padding:.5rem .85rem;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.07);
  border-radius:999px;
  color:rgba(255,255,255,.90);
}

.aa-hero-card{
  position:relative;
  border-radius:1.5rem;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.14);
  box-shadow: 0 30px 70px rgba(0,0,0,.35);
}
.aa-hero-card img{width:100%;height:auto;display:block;}
.aa-hero-card-overlay{
  position:absolute;
  inset:auto 0 0 0;
  padding:1rem;
  background:linear-gradient(180deg, transparent 0%, rgba(0,0,0,.55) 55%, rgba(0,0,0,.78) 100%);
}
.aa-mini-card{
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  border-radius:1rem;
  padding:.85rem;
  height:100%;
}
.aa-mini-icon{
  width:42px;height:42px;
  border-radius:12px;
  display:flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.10);
  color:#fff;
  margin-bottom:.5rem;
}

.aa-section-title{max-width:900px;}
.aa-kicker{
  display:inline-block;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size:.85rem;
  background:var(--aa-grad-2);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  margin-bottom:.35rem;
}

.aa-card{
  border:1px solid rgba(13,18,32,.10);
  border-radius:1.25rem;
  overflow:hidden;
  box-shadow:0 14px 40px rgba(13,18,32,.08);
  background:#fff;
}
.aa-card .card-body{padding:1.15rem;}
.aa-card-img{
  height:190px;
  object-fit:cover;
  width:100%;
}
.aa-badge{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  padding:.35rem .65rem;
  border-radius:999px;
  background:rgba(79,70,229,.12);
  color:#3730a3;
  font-weight:700;
  font-size:.9rem;
}

.aa-stat{
  background:linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.06));
  border:1px solid rgba(255,255,255,.14);
  border-radius:1.2rem;
  padding:1rem;
  height:100%;
}
.aa-stat .aa-stat-value{
  font-size:1.65rem;
  font-weight:900;
  color:#fff;
}
.aa-stat .aa-stat-label{
  color:rgba(255,255,255,.78);
}

.aa-divider{
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(13,18,32,.20), transparent);
  margin:2rem 0;
}

.aa-quote{
  background:linear-gradient(135deg, rgba(124,58,237,.10), rgba(6,182,212,.10));
  border:1px solid rgba(79,70,229,.14);
  border-radius:1.25rem;
  padding:1rem 1.1rem;
  height:100%;
}
.aa-quote .stars{color:#f59e0b;}
.aa-quote .role{color:rgba(13,18,32,.70);}

.aa-accordion .accordion-item{
  border:1px solid rgba(13,18,32,.10);
  border-radius:1rem !important;
  overflow:hidden;
  margin-bottom:.8rem;
}
.aa-accordion .accordion-button{font-weight:800;}
.aa-accordion .accordion-button:not(.collapsed){
  color:#0b1020;
  background:linear-gradient(135deg, rgba(124,58,237,.12), rgba(6,182,212,.12));
}

.aa-form{
  border-radius:1.25rem;
  border:1px solid rgba(13,18,32,.12);
  background:#fff;
  box-shadow:0 18px 48px rgba(13,18,32,.08);
}

.aa-footer{
  background:linear-gradient(180deg,#070a14,#0b1020);
  color:rgba(255,255,255,.78);
  border-top:1px solid rgba(255,255,255,.10);
}
.aa-footer a{color:rgba(255,255,255,.90); text-decoration:none;}
.aa-footer a:hover{color:#fff; text-decoration:underline;}
.aa-footer .aa-footer-title{color:#fff;font-weight:900;}
.aa-footer .aa-social a{
  display:inline-flex;align-items:center;justify-content:center;
  width:42px;height:42px;border-radius:14px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.06);
  margin-right:.5rem;
}

.aa-cookie{
  position:fixed;
  left:1rem; right:1rem; bottom:1rem;
  z-index:1080;
  border-radius:1.25rem;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(10,14,28,.92);
  color:rgba(255,255,255,.86);
  box-shadow:0 18px 60px rgba(0,0,0,.45);
  padding:1rem;
  display:none;
}
.aa-cookie .title{color:#fff;font-weight:900;}
.aa-cookie a{color:#c7d2fe;}

.aa-float{
  position:absolute;
  inset:auto auto -120px -120px;
  width:280px;height:280px;
  background:var(--aa-grad-3);
  filter: blur(0px);
  opacity:.55;
  border-radius:999px;
  transform:rotate(20deg);
}

.aa-fade-up{
  opacity:0;
  transform: translateY(10px);
  transition: opacity .7s ease, transform .7s ease;
}
.aa-fade-up.is-visible{
  opacity:1;
  transform:none;
}

.aa-page-hero{
  background:
    radial-gradient(600px 320px at 15% 20%, rgba(124,58,237,.45), transparent 60%),
    radial-gradient(600px 320px at 85% 30%, rgba(6,182,212,.30), transparent 60%),
    linear-gradient(180deg, #0a0e1c 0%, #0b1020 100%);
  color:#fff;
  padding:3.5rem 0 2.2rem;
}
.aa-breadcrumb a{color:rgba(255,255,255,.88);text-decoration:none;}
.aa-breadcrumb a:hover{color:#fff;text-decoration:underline;}

.small-muted{color:rgba(13,18,32,.70);}
