@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=Sora:wght@600;700;800&display=swap');

:root{
    --aic-navy:#05101b;
    --aic-deep:#0a1830;
    --aic-blue:#0b4f8a;
    --aic-cobalt:#115fd0;
    --aic-cyan:#24d1ff;
    --aic-teal:#1ca18b;
    --aic-emerald:#2ea73a;
    --aic-lime:#8adf2f;
    --aic-surface:#0b1523;
    --aic-muted:#94a3b8;
    --aic-card:rgba(7,12,22,.78);
    --aic-border:rgba(255,255,255,.11);
}

html { scroll-behavior: smooth; }
body {
    font-family: 'Plus Jakarta Sans', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    background:
      radial-gradient(circle at top right, rgba(36,209,255,.14), transparent 22%),
      radial-gradient(circle at top left, rgba(46,167,58,.14), transparent 24%),
      radial-gradient(circle at 50% 120%, rgba(17,95,208,.10), transparent 30%),
      linear-gradient(180deg, #04101a 0%, #07131f 50%, #091827 100%);
    color: #f8fafc;
}
h1,h2,h3,h4,h5,h6,.font-display { font-family:'Sora', 'Plus Jakarta Sans', sans-serif; }

.brand-gradient {
    background: linear-gradient(135deg, var(--aic-blue), var(--aic-cobalt) 35%, var(--aic-cyan) 68%, var(--aic-emerald));
}
.brand-text {
    background: linear-gradient(135deg, #ffffff, #caeeff 42%, #b8ffcb);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}
.soft-card {
    background:
        linear-gradient(180deg, rgba(11,21,35,.94), rgba(4,9,18,.86));
    border: 1px solid var(--aic-border);
    box-shadow:
        0 20px 50px rgba(0,0,0,.38),
        inset 0 1px 0 rgba(255,255,255,.05);
}
.mesh-card {
    background:
      radial-gradient(circle at 10% 10%, rgba(36,209,255,.12), transparent 26%),
      radial-gradient(circle at 90% 20%, rgba(138,223,47,.14), transparent 24%),
      linear-gradient(180deg, rgba(10,24,48,.94), rgba(3,8,18,.92));
    border:1px solid rgba(255,255,255,.08);
    box-shadow: 0 18px 44px rgba(0,0,0,.28);
}
.glow-ring {
    box-shadow: 0 0 0 1px rgba(255,255,255,.06), 0 20px 50px rgba(6,17,31,.55), 0 0 60px rgba(36,209,255,.12);
}
.section-title {
    letter-spacing: -.045em;
}
.hero-grid::before{
    content:'';
    position:absolute; inset:-18%;
    background:
       radial-gradient(circle at 18% 28%, rgba(36,209,255,.11), transparent 18%),
       radial-gradient(circle at 82% 20%, rgba(46,167,58,.16), transparent 16%),
       radial-gradient(circle at 72% 74%, rgba(17,95,208,.16), transparent 16%);
    filter: blur(34px);
    pointer-events:none;
}
.nav-link{ position:relative; }
.nav-link::after{
    content:''; position:absolute; left:0; bottom:-8px; height:2px; width:0;
    background: linear-gradient(90deg, var(--aic-cyan), var(--aic-emerald));
    transition: width .25s ease;
}
.nav-link:hover::after,.nav-link.active::after{ width:100%; }

.btn-primary{
    background: linear-gradient(135deg, var(--aic-blue), var(--aic-cobalt) 42%, var(--aic-cyan) 72%, var(--aic-emerald));
    box-shadow: 0 16px 34px rgba(36,209,255,.18), 0 10px 22px rgba(46,167,58,.10), inset 0 1px 0 rgba(255,255,255,.18);
}
.btn-secondary{
    background: linear-gradient(180deg, rgba(10,24,48,.48), rgba(5,10,18,.74));
    border:1px solid rgba(255,255,255,.15);
}
.float-orb{
    position:absolute; border-radius:999px; filter: blur(60px); opacity:.55; pointer-events:none;
}
.card-hover{ transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease; }
.card-hover:hover{
    transform: translateY(-6px);
    border-color: rgba(36,209,255,.24);
    box-shadow: 0 26px 50px rgba(0,0,0,.35), 0 0 45px rgba(36,209,255,.10);
}
.team-track{ transition: transform .65s cubic-bezier(.22,.61,.36,1); }
.stat-divider{ background: linear-gradient(180deg, transparent, rgba(255,255,255,.12), transparent); }

.prose-lite p { color:#cbd5e1; line-height:1.85; }
.prose-lite ul { display:grid; gap:.75rem; color:#cbd5e1; }
.prose-lite li::marker{ color:#8adf2f; }

input, textarea, select { color:#fff; }
.admin-shell{
    background:
      radial-gradient(circle at top right, rgba(36,209,255,.16), transparent 24%),
      radial-gradient(circle at top left, rgba(46,167,58,.12), transparent 20%),
      linear-gradient(180deg, #030712, #0b1220 56%, #020617);
}
.table-wrap table{ width:100%; border-collapse:collapse; }
.table-wrap th,.table-wrap td{ padding:.85rem .9rem; border-bottom:1px solid rgba(255,255,255,.08); vertical-align:top; }
.table-wrap th{ color:#7dd3fc; font-size:.82rem; text-transform:uppercase; letter-spacing:.12em; }
.badge{
    display:inline-flex; align-items:center; gap:.35rem; border-radius:999px; padding:.35rem .7rem;
    font-size:.75rem; font-weight:700; text-transform:uppercase; letter-spacing:.08em;
}
.badge-success{ background:rgba(46,213,115,.14); color:#a7f3d0; border:1px solid rgba(46,213,115,.22); }
.badge-muted{ background:rgba(148,163,184,.12); color:#cbd5e1; border:1px solid rgba(148,163,184,.18); }

.mobile-panel{
    background:
      linear-gradient(180deg, rgba(5,16,27,.98), rgba(3,8,18,.98)),
      radial-gradient(circle at top right, rgba(36,209,255,.18), transparent 22%),
      radial-gradient(circle at top left, rgba(46,167,58,.14), transparent 18%);
    backdrop-filter: blur(16px);
}
.img-cover{ object-fit:cover; width:100%; height:100%; }
.sheen::before{
    content:''; position:absolute; inset:0;
    background: linear-gradient(110deg, transparent 30%, rgba(255,255,255,.08) 47%, transparent 62%);
    transform: translateX(-120%);
    transition: transform .9s ease;
}
.sheen:hover::before{ transform: translateX(130%); }

@media (max-width: 768px){
    .mobile-tight{ padding-top: 1rem !important; padding-bottom: 1rem !important; }
}


.logo-shell{
    background: linear-gradient(135deg, rgba(17,95,208,.95), rgba(36,209,255,.88) 58%, rgba(46,167,58,.82));
    box-shadow: 0 10px 28px rgba(5,16,27,.3), 0 0 0 1px rgba(255,255,255,.06);
}
.site-name{ text-shadow: 0 4px 20px rgba(0,0,0,.18); }
.site-tagline{ line-height: 1.25; }
.hero-badge{ backdrop-filter: blur(10px); }
.icon-pill{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    height:2rem;
    width:2rem;
    border-radius:999px;
    border:1px solid rgba(255,255,255,.12);
    background: linear-gradient(180deg, rgba(36,209,255,.12), rgba(46,167,58,.12));
    color:#c8f7ff;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 10px 22px rgba(0,0,0,.15);
}
.team-dot{ transition: all .25s ease; }
.team-dot.is-active{ background: linear-gradient(90deg, var(--aic-cyan), var(--aic-emerald)); box-shadow: 0 0 24px rgba(36,209,255,.25); }
.line-clamp-2{
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
}
@media (max-width: 640px){
    .site-tagline{ display:none; }
}


/* Premium polish update */
body {
    background:
      radial-gradient(circle at 82% 8%, rgba(36,209,255,.16), transparent 18%),
      radial-gradient(circle at 12% 16%, rgba(46,167,58,.14), transparent 20%),
      radial-gradient(circle at 50% 80%, rgba(17,95,208,.10), transparent 24%),
      linear-gradient(180deg, #030a12 0%, #07111e 48%, #081523 100%);
}
header::after{
    content:'';
    position:absolute;
    left:0; right:0; bottom:0;
    height:1px;
    background:linear-gradient(90deg, transparent, rgba(36,209,255,.35), rgba(138,223,47,.24), transparent);
}
header{ position:sticky; }
.logo-shell{
    background:
      radial-gradient(circle at top left, rgba(255,255,255,.18), transparent 36%),
      linear-gradient(135deg, rgba(17,95,208,.96), rgba(36,209,255,.9) 52%, rgba(46,167,58,.85));
    box-shadow:
      0 14px 30px rgba(5,16,27,.34),
      0 0 0 1px rgba(255,255,255,.08),
      0 0 34px rgba(36,209,255,.16);
}
.soft-card {
    background:
        radial-gradient(circle at top right, rgba(36,209,255,.08), transparent 22%),
        radial-gradient(circle at bottom left, rgba(46,167,58,.08), transparent 24%),
        linear-gradient(180deg, rgba(11,21,35,.95), rgba(4,9,18,.9));
    border: 1px solid rgba(255,255,255,.1);
    box-shadow:
        0 26px 60px rgba(0,0,0,.42),
        inset 0 1px 0 rgba(255,255,255,.05),
        0 0 0 1px rgba(255,255,255,.02);
}
.mesh-card {
    background:
      radial-gradient(circle at 12% 10%, rgba(36,209,255,.18), transparent 26%),
      radial-gradient(circle at 92% 18%, rgba(138,223,47,.15), transparent 24%),
      radial-gradient(circle at 60% 100%, rgba(17,95,208,.14), transparent 30%),
      linear-gradient(180deg, rgba(10,24,48,.96), rgba(3,8,18,.94));
    border:1px solid rgba(255,255,255,.09);
    box-shadow: 0 22px 58px rgba(0,0,0,.34), 0 0 44px rgba(36,209,255,.06);
}
.hero-badge{
    background:
      linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.03));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 18px 36px rgba(0,0,0,.16);
}
.btn-primary{
    position:relative;
    overflow:hidden;
    background: linear-gradient(135deg, #0b4f8a, #115fd0 36%, #24d1ff 68%, #2ea73a);
    box-shadow: 0 18px 40px rgba(17,95,208,.26), 0 12px 24px rgba(46,167,58,.14), inset 0 1px 0 rgba(255,255,255,.22);
}
.btn-primary::before{
    content:'';
    position:absolute;
    inset:1px;
    border-radius:inherit;
    background:linear-gradient(180deg, rgba(255,255,255,.14), transparent 36%);
    pointer-events:none;
}
.btn-secondary{
    background: linear-gradient(180deg, rgba(10,24,48,.6), rgba(5,10,18,.8));
    border:1px solid rgba(255,255,255,.14);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 16px 34px rgba(0,0,0,.15);
}
.nav-link{ color:#e2e8f0; transition: color .25s ease; }
.nav-link:hover{ color:#fff; }
.icon-pill{
    background: linear-gradient(180deg, rgba(36,209,255,.16), rgba(46,167,58,.16));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 14px 24px rgba(0,0,0,.18), 0 0 28px rgba(36,209,255,.08);
}
.card-hover:hover{
    transform: translateY(-7px);
    border-color: rgba(36,209,255,.26);
    box-shadow: 0 28px 54px rgba(0,0,0,.38), 0 0 50px rgba(36,209,255,.11);
}
.site-name{
    text-shadow: 0 6px 28px rgba(0,0,0,.24);
}
.site-tagline{
    text-shadow: 0 6px 24px rgba(0,0,0,.2);
}
.table-wrap tr:hover td{ background:rgba(255,255,255,.02); }
.table-wrap td:first-child,.table-wrap th:first-child{ padding-left:1rem; }
.table-wrap td:last-child,.table-wrap th:last-child{ padding-right:1rem; }
input, textarea, select{
    transition:border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}
input:focus, textarea:focus, select:focus{
    outline:none;
    border-color: rgba(36,209,255,.34) !important;
    box-shadow: 0 0 0 4px rgba(36,209,255,.08), 0 10px 28px rgba(0,0,0,.16);
    background: rgba(2,6,23,.88);
}

/* Admin premium sidebar */
.admin-topbar{
    box-shadow: 0 16px 40px rgba(0,0,0,.26);
}
.admin-sidebar{
    box-shadow: 24px 0 60px rgba(0,0,0,.24);
}
.admin-sidebar::before{
    content:'';
    position:absolute;
    inset:0;
    background:
      radial-gradient(circle at top right, rgba(36,209,255,.10), transparent 24%),
      radial-gradient(circle at top left, rgba(46,167,58,.10), transparent 22%);
    pointer-events:none;
}
.admin-nav-scroll{
    overflow-y:auto;
    padding-right:.15rem;
    max-height: min(50vh, 520px);
}
@media (min-width: 1024px){
    .admin-nav-scroll{ max-height: calc(100vh - 380px); }
}
.admin-nav-scroll::-webkit-scrollbar{ width:10px; }
.admin-nav-scroll::-webkit-scrollbar-track{ background:transparent; }
.admin-nav-scroll::-webkit-scrollbar-thumb{
    background:linear-gradient(180deg, rgba(36,209,255,.22), rgba(46,167,58,.18));
    border-radius:999px;
    border:2px solid transparent;
    background-clip:padding-box;
}
.admin-profile-panel{
    background:
      radial-gradient(circle at top right, rgba(36,209,255,.12), transparent 30%),
      linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.025));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 18px 34px rgba(0,0,0,.14);
}
.admin-avatar{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    height:2.65rem;
    width:2.65rem;
    border-radius:1rem;
    color:#d8fbff;
    background: linear-gradient(135deg, rgba(17,95,208,.88), rgba(36,209,255,.72), rgba(46,167,58,.64));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 12px 24px rgba(0,0,0,.18);
}
.admin-nav-link{
    position:relative;
    display:flex;
    align-items:center;
    gap:.85rem;
    min-height:3.5rem;
    border-radius:1.1rem;
    border:1px solid rgba(255,255,255,.06);
    padding:.85rem .95rem;
    color:#cbd5e1;
    background:linear-gradient(180deg, rgba(255,255,255,.025), rgba(255,255,255,.01));
    transition:transform .22s ease, border-color .22s ease, background .22s ease, color .22s ease, box-shadow .22s ease;
}
.admin-nav-link:hover{
    color:#fff;
    transform:translateY(-1px);
    border-color:rgba(36,209,255,.18);
    background:linear-gradient(180deg, rgba(36,209,255,.08), rgba(255,255,255,.03));
    box-shadow:0 14px 28px rgba(0,0,0,.14);
}
.admin-nav-link.is-active{
    color:#fff;
    border-color:rgba(36,209,255,.22);
    background:
      radial-gradient(circle at right center, rgba(46,167,58,.12), transparent 28%),
      linear-gradient(135deg, rgba(17,95,208,.24), rgba(36,209,255,.12) 58%, rgba(46,167,58,.14));
    box-shadow:0 18px 34px rgba(0,0,0,.16), 0 0 30px rgba(36,209,255,.08);
}
.admin-nav-icon{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    height:2.4rem;
    width:2.4rem;
    border-radius:.95rem;
    border:1px solid rgba(255,255,255,.08);
    background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.015));
    color:#9aefff;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.08);
}
.admin-nav-icon.is-active{
    color:#fff;
    background:linear-gradient(135deg, rgba(17,95,208,.92), rgba(36,209,255,.8), rgba(46,167,58,.76));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 10px 22px rgba(17,95,208,.22);
}
@media (max-width: 1023px){
    .admin-sidebar{ max-height:100dvh; }
}
@media (max-width: 640px){
    .site-name{ font-size:1rem; }
    .logo-shell img{ height:2.7rem; width:2.7rem; }
}
