html,body{ font-family:'Inter',sans-serif; }
::selection{ background:#8E72C7; color:#fff; }
.grad-text{ background:linear-gradient(100deg,#2B7FD4,#3FB8BD 45%,#8E72C7); -webkit-background-clip:text; background-clip:text; color:transparent; }
.grad-bg{ background:linear-gradient(110deg,#3FB8BD 0%,#8E72C7 100%); }
.grad-ocean{ background:linear-gradient(120deg,#2B7FD4 0%,#3FB8BD 60%,#8E72C7 100%); }
.card{ transition:transform .35s cubic-bezier(.2,.7,.2,1), box-shadow .35s; }
.card:hover{ transform:translateY(-6px); box-shadow:0 20px 40px -12px rgba(43,127,212,.25); }
@keyframes pulsedot{ 0%{ box-shadow:0 0 0 0 rgba(239,68,68,.7);} 70%{ box-shadow:0 0 0 8px rgba(239,68,68,0);} 100%{ box-shadow:0 0 0 0 rgba(239,68,68,0);} }
.livedot{ animation:pulsedot 1.6s infinite; }
.reveal{ opacity:0; transform:translateY(28px); transition:opacity .7s ease, transform .7s cubic-bezier(.2,.7,.2,1); }
.reveal.show{ opacity:1; transform:none; }
@keyframes floaty{ 0%,100%{ transform:translateY(0);} 50%{ transform:translateY(-14px);} }
.floaty{ animation:floaty 6s ease-in-out infinite; }
.blob{ position:absolute; border-radius:50%; filter:blur(70px); opacity:.30; z-index:0; }
details[open] .faq-ico{ transform:rotate(45deg); }

/* ── PRELOADER ──────────────────────────────────── */
#ah-preloader{
    position:fixed; inset:0;
    background:#0f172a;
    z-index:99999;
    display:flex; align-items:center; justify-content:center;
    transition:opacity .5s ease, visibility .5s ease;
}
#ah-preloader.hidden{ opacity:0; visibility:hidden; }
.ah-preloader-inner{ text-align:center; }
.ah-preloader-logo{
    font-family:'Inter',sans-serif;
    font-size:2rem; font-weight:800;
    color:#fff; letter-spacing:3px;
    margin-bottom:1.5rem;
}
.ah-preloader-logo span{ background:linear-gradient(100deg,#2B7FD4,#3FB8BD 45%,#8E72C7); -webkit-background-clip:text; background-clip:text; color:transparent; }
.ah-preloader-bar{
    width:200px; height:3px;
    background:rgba(255,255,255,.12);
    border-radius:10px; overflow:hidden;
    margin:0 auto;
}
.ah-preloader-fill{
    height:100%;
    background:linear-gradient(90deg,#2B7FD4,#3FB8BD,#8E72C7);
    border-radius:10px;
    animation:ah-preload 1.8s ease forwards;
}
@keyframes ah-preload{ from{width:0} to{width:100%} }

/* ── SPLASH SCREEN ──────────────────────────────── */
#ah-splash{
    position:fixed; inset:0;
    background:linear-gradient(160deg,#0f172a 0%,#1e293b 60%,#0f172a 100%);
    z-index:99998;
    display:flex; align-items:center; justify-content:center;
    transition:opacity .8s ease, visibility .8s ease;
    opacity:1; visibility:visible;
}
#ah-splash.hidden{ opacity:0; visibility:hidden; }
.ah-splash-content{
    text-align:center;
    animation:ah-splash-float 1.2s ease-in-out forwards;
}
.ah-splash-content img{
    height:90px; filter:brightness(0) invert(1); margin-bottom:1.2rem;
}
.ah-splash-text h1{
    font-family:'Inter',sans-serif;
    font-size:clamp(2rem,6vw,3.5rem);
    font-weight:900; color:#fff;
    letter-spacing:2px; margin:0; line-height:1;
}
.ah-splash-text .ah-accent{
    background:linear-gradient(100deg,#2B7FD4,#3FB8BD 45%,#8E72C7);
    -webkit-background-clip:text; background-clip:text; color:transparent;
}
@keyframes ah-splash-float{
    0%{ opacity:0; transform:scale(.8) translateY(20px); }
    50%{ opacity:1; }
    100%{ opacity:1; transform:scale(1) translateY(0); }
}

/* ── TOPBAR ─────────────────────────────────────── */
#ah-topbar{
    background:#0f172a;
    padding:.5rem 0;
    font-size:.78rem;
    color:rgba(255,255,255,.7);
    position:sticky; top:0; z-index:60;
    border-bottom:1px solid rgba(63,184,189,.12);
    transition:transform .3s ease;
}
.ah-topbar-inner{
    max-width:80rem; margin:0 auto; padding:0 1.25rem;
    display:flex; align-items:center; justify-content:space-between;
}
.ah-topbar-badge{
    display:flex; align-items:center; gap:.45rem;
    color:rgba(255,255,255,.75); font-weight:500;
}
.ah-topbar-badge img{ height:20px; }
.ah-topbar-badge strong{ background:linear-gradient(100deg,#3FB8BD,#8E72C7); -webkit-background-clip:text; background-clip:text; color:transparent; }
.ah-topbar-slogan{
    font-family:'Inter',sans-serif; font-weight:800;
    font-size:.85rem; color:#fff; letter-spacing:1.5px;
}
.ah-topbar-slogan .ah-accent{ background:linear-gradient(100deg,#3FB8BD,#8E72C7); -webkit-background-clip:text; background-clip:text; color:transparent; }
.ah-topbar-right{
    display:flex; align-items:center; gap:.75rem;
}
.ah-topbar-right a{
    color:rgba(255,255,255,.6); font-size:.78rem;
    transition:color .3s;
}
.ah-topbar-right a:hover{ color:#3FB8BD; }
.ah-topbar-right i{ font-size:.78rem; margin-right:.3rem; color:#3FB8BD; vertical-align:middle; }
@media(max-width:767px){
    .ah-topbar-right{ display:none; }
    .ah-topbar-slogan{ font-size:.72rem; }
}
