/* ===== DatAI Vision – styles =====
   Palette: navy / electric blue / white. Orange is ONLY for CTA buttons. */
:root{
  --navy:#0B1F5C; --navy-2:#071440; --blue:#1E5EFF; --blue-l:#4d8bff;
  --ink:#0f1a3d; --muted:#51608a; --bg-soft:#f3f6ff;
  --orange:#FF7A00; --orange-d:#e56d00;
  --r:18px; --shadow:0 10px 30px rgba(11,31,92,.12);
  --head:'Sora','Poppins',system-ui,sans-serif; --body:'Inter',system-ui,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
[hidden]{display:none!important}
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{font-family:var(--body);color:var(--ink);background:#fff;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto}
a{color:inherit}
h1,h2,h3{font-family:var(--head);line-height:1.15;letter-spacing:-.02em}
.container{width:min(1160px,92%);margin-inline:auto}
.narrow{width:min(820px,92%)}
.center{text-align:center;margin-top:28px}
.skip-link{position:absolute;left:-999px;top:8px;background:#fff;color:var(--navy);padding:8px 14px;border-radius:8px;z-index:200}
.skip-link:focus{left:8px}
:focus-visible{outline:3px solid var(--blue-l);outline-offset:3px}

/* Buttons – orange reserved for CTAs */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 26px;border-radius:999px;font-weight:600;font-size:1rem;text-decoration:none;border:2px solid transparent;cursor:pointer;font-family:var(--body);transition:transform .2s,box-shadow .2s,background .2s}
.btn--cta{background:var(--orange);color:#fff;box-shadow:0 8px 24px rgba(255,122,0,.4)}
.btn--cta:hover{background:var(--orange-d);transform:translateY(-2px);box-shadow:0 12px 32px rgba(255,122,0,.55)}
.btn--ghost{border-color:rgba(255,255,255,.55);color:#fff;background:rgba(255,255,255,.08)}
.btn--ghost:hover{background:rgba(255,255,255,.18);transform:translateY(-2px)}
.btn--sm{padding:10px 18px;font-size:.92rem}
.btn--block{width:100%}

/* Navbar – light so the real logo (navy text) is fully readable */
.nav{position:fixed;inset:0 0 auto 0;z-index:100;background:rgba(255,255,255,.95);backdrop-filter:blur(12px);box-shadow:0 2px 16px rgba(11,31,92,.1)}
.nav__inner{display:flex;align-items:center;justify-content:space-between;height:74px}
.logo{display:block;line-height:0}
.logo img{height:54px;width:auto}
.nav__links{display:flex;align-items:center;gap:22px}
.nav__links a{color:var(--navy);text-decoration:none;font-size:.93rem;font-weight:600}
.nav__links a:not(.btn):hover{color:var(--blue)}
.nav__toggle{display:none;background:none;border:0;width:44px;height:44px;cursor:pointer}
.nav__toggle span{display:block;height:3px;background:var(--navy);margin:6px 8px;border-radius:2px}

/* Hero */
.hero{position:relative;min-height:100svh;display:flex;align-items:center;color:#fff;overflow:hidden;background:radial-gradient(1200px 700px at 78% 25%,#123b9c 0%,var(--navy) 45%,var(--navy-2) 100%);padding:120px 0 70px}
#neural{position:absolute;inset:0;width:100%;height:100%}
.hero__grid{position:relative;z-index:2;display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center}
.eyebrow{font-weight:600;color:#cfe0ff;margin-bottom:14px;font-size:1rem}
.eyebrow strong{color:var(--blue-l)}
.hero h1{font-size:clamp(1.9rem,3.6vw,3rem);margin-bottom:16px;font-weight:800}
.grad{background:linear-gradient(90deg,#6ea2ff,#3b78ff 60%,#8fb8ff);-webkit-background-clip:text;background-clip:text;color:transparent}
.nowrap{display:block}
.hero__sub{font-size:clamp(1.05rem,2.2vw,1.3rem);font-weight:600;margin-bottom:16px}
.typing{font-family:var(--head);font-size:clamp(1.05rem,2.4vw,1.4rem);color:var(--blue-l);min-height:1.8em;margin-bottom:26px}
.typing__label{color:#cfe0ff;font-weight:600}
.caret{display:inline-block;width:3px;height:1.1em;background:var(--blue-l);margin-left:4px;vertical-align:-.15em;animation:blink 1s steps(1) infinite}
@keyframes blink{50%{opacity:0}}
.hero__cta{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:22px}
.hero__note{color:#b9cbff;font-size:.92rem}

/* Hero right: glass track panel + floating icons */
.hero__panel{position:relative;padding:20px 10px}
.glass-dark{background:rgba(255,255,255,.09);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.22);border-radius:22px;padding:22px;box-shadow:0 0 50px rgba(30,94,255,.35)}
.panel__title{font-family:var(--head);font-weight:700;margin-bottom:14px}
.panel__item{display:flex;gap:14px;align-items:center;text-decoration:none;padding:14px;border-radius:14px;background:rgba(255,255,255,.07);margin-bottom:10px;border:1px solid transparent;transition:.25s}
.panel__item:hover{border-color:var(--blue-l);background:rgba(30,94,255,.25);transform:translateX(4px)}
.panel__ico{font-size:1.6rem}
.panel__item b{display:block;font-family:var(--head);font-size:1rem}
.panel__item small{color:#b9cbff;font-size:.8rem}
.panel__foot{margin-top:6px;font-size:.9rem;color:#a7c4ff;font-weight:600}
.fi{position:absolute;z-index:3;display:grid;place-items:center;width:62px;height:62px;border-radius:18px;font-family:var(--head);font-weight:800;color:#fff;background:rgba(15,40,120,.75);border:1px solid rgba(255,255,255,.3);box-shadow:0 0 26px rgba(30,94,255,.6);animation:floaty 6s ease-in-out infinite;transition:transform .2s}
.fi--py{left:-22px;top:-18px;color:#ffd43b}
.fi--sql{right:-14px;top:22%;animation-delay:-2s}
.fi--aws{left:-24px;bottom:12px;color:#ff9900;animation-delay:-4s}
.fi--ai{right:-10px;bottom:-16px;color:#8fb8ff;animation-delay:-1s}
@keyframes floaty{50%{margin-top:-12px}}

/* Trust strip */
.trust{background:#fff;border-bottom:1px solid #e3eaff}
.trust__list{list-style:none;display:grid;grid-template-columns:repeat(5,1fr);gap:8px;padding:26px 0}
.trust li{text-align:center;padding:6px 8px}
.trust li span{font-size:1.6rem}
.trust li b{display:block;font-family:var(--head);color:var(--navy);font-size:.98rem}
.trust li small{color:var(--muted);font-size:.82rem}

/* Marquee */
.marquee{background:var(--navy-2);overflow:hidden;padding:16px 0}
.marquee__track{display:flex;gap:44px;width:max-content;animation:scroll 34s linear infinite}
.marquee:hover .marquee__track{animation-play-state:paused}
.marquee span{color:#9db6ff;font-family:var(--head);font-weight:600;font-size:1.05rem;white-space:nowrap}
.marquee span::before{content:"◆ ";color:var(--blue)}
@keyframes scroll{to{transform:translateX(-50%)}}

/* Sections */
.section{padding:88px 0;background:#fff}
.section--dark{background:radial-gradient(900px 500px at 15% 0,#123b9c 0%,var(--navy) 55%,var(--navy-2) 100%);color:#fff}
#audience,#leaderboard,#faq{background:var(--bg-soft)}
#journey{background:#fff}
.section__head{text-align:center;max-width:720px;margin:0 auto 46px}
.section__head h2{font-size:clamp(1.7rem,4vw,2.6rem);margin:6px 0 12px}
.section__head p{color:var(--muted)}
.section--dark .section__head p{color:#c5d3ff}
.kicker{display:inline-block;color:var(--blue);font-weight:700;text-transform:uppercase;letter-spacing:.14em;font-size:.8rem}
.section--dark .kicker{color:var(--blue-l)}
.sub-title{font-size:1.3rem;margin:10px 0 20px;color:#dbe6ff}
.sub-title:not(:first-of-type){margin-top:56px}
.sample-badge{display:inline-block;margin-top:8px;background:#fff3e0;color:#9a5b00!important;padding:3px 12px;border-radius:999px;font-size:.85rem}
.grid{display:grid;gap:22px}
.grid--4{grid-template-columns:repeat(4,1fr)}
.grid--3{grid-template-columns:repeat(3,1fr)}

/* Glass cards */
.glass{background:rgba(255,255,255,.75);backdrop-filter:blur(10px);border:1px solid rgba(30,94,255,.15);border-radius:var(--r);box-shadow:var(--shadow);transition:transform .25s,box-shadow .25s}
.section--dark .glass{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.18);box-shadow:none}
.glass:hover{transform:translateY(-6px);box-shadow:0 0 0 1px var(--blue),0 14px 40px rgba(30,94,255,.3)}
.card{padding:28px 22px;text-align:center}
.card h3{margin:10px 0 8px;font-size:1.2rem;color:var(--navy)}
.card p{color:var(--muted);font-size:.95rem}
.ico{font-size:2.2rem}

/* Career tracks */
.track{padding:28px 24px;display:flex;flex-direction:column;position:relative}
.track__tag{align-self:flex-start;background:rgba(30,94,255,.3);color:#cfe0ff;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;padding:4px 10px;border-radius:999px;margin-bottom:12px}
.track h3{font-size:1.25rem;margin-bottom:6px}
.track__for{color:#c5d3ff;font-size:.95rem;margin-bottom:10px}
.track__dur{color:#8fb8ff;font-weight:700;font-size:.9rem;margin-bottom:14px}
.mods{list-style:none;display:grid;align-content:start;gap:8px;margin-bottom:16px;flex:1;font-size:.92rem;color:#e6ecff}
.mods li{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:9px 12px;background:rgba(255,255,255,.07);border-radius:10px}
.mods li b{color:#fff}
.mods em{font-style:normal;color:#a7c4ff;font-size:.8rem;white-space:nowrap;font-weight:600}
.track__job{color:#a7f0c4;font-weight:600;font-size:.9rem;margin-bottom:16px}

/* Individual course cards */
.course{padding:22px 18px;text-align:left}
.course h3{font-size:1.1rem;margin:8px 0 6px}
.course p{color:#c5d3ff;font-size:.9rem}
.dur{display:inline-block;background:rgba(30,94,255,.35);color:#dbe6ff;font-size:.78rem;font-weight:700;padding:3px 10px;border-radius:999px}

/* Timeline (6 steps) */
.timeline{list-style:none;display:grid;grid-template-columns:repeat(6,1fr);gap:14px;position:relative}
.timeline::before{content:"";position:absolute;top:28px;left:8%;right:8%;height:3px;background:linear-gradient(90deg,var(--blue),var(--blue-l));border-radius:3px}
.timeline li{text-align:center;position:relative}
.dot{display:grid;place-items:center;width:56px;height:56px;margin:0 auto 14px;border-radius:50%;background:var(--navy);color:#fff;font-family:var(--head);font-weight:800;box-shadow:0 0 0 6px #dfe8ff,0 0 20px rgba(30,94,255,.5);position:relative;z-index:1}
.timeline h3{font-size:1.02rem;color:var(--navy);margin-bottom:4px}
.timeline p{font-size:.86rem;color:var(--muted)}

/* Benefits */
.benefit{padding:26px 20px;text-align:center}
.benefit h3{font-size:1.1rem;margin:12px 0 6px}
.benefit p{color:#c5d3ff;font-size:.92rem}
.check{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--blue);font-weight:800;transform:scale(0);transition:transform .5s cubic-bezier(.3,1.6,.5,1)}
.reveal.in .check{transform:scale(1)}

/* Leaderboard */
.board{background:var(--navy);border-radius:var(--r);padding:14px;box-shadow:var(--shadow);color:#fff}
.row{display:grid;grid-template-columns:44px 1fr 2fr 84px;align-items:center;gap:12px;padding:14px 12px;border-radius:12px}
.row:nth-child(odd){background:rgba(255,255,255,.05)}
.row--1{background:linear-gradient(90deg,rgba(30,94,255,.5),transparent)!important}
.rank{font-size:1.4rem;text-align:center;font-family:var(--head);font-weight:700}
.who{font-weight:600}
.bar{height:10px;background:rgba(255,255,255,.12);border-radius:10px;overflow:hidden}
.bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--blue),#8fb8ff);border-radius:10px;transition:width 1.4s ease .2s}
.reveal.in .bar i{width:var(--w)}
.pts{text-align:right;font-weight:700;color:#a7c4ff}

/* Reviews */
.quote{padding:24px}
.stars{color:#ffc933;letter-spacing:2px;margin-bottom:10px}
.quote blockquote{font-size:.98rem;color:#e6ecff;margin-bottom:16px}
.quote figcaption b{display:block}
.quote figcaption span{font-size:.85rem;color:#a7c4ff}

/* FAQ */
.faq details{background:#fff;border:1px solid #dbe4ff;border-radius:14px;margin-bottom:12px;overflow:hidden}
.faq summary{padding:18px 22px;font-weight:600;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:12px;font-family:var(--head);font-size:1.02rem;color:var(--navy)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:1.5rem;color:var(--blue);transition:transform .25s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details[open]{box-shadow:0 0 0 2px var(--blue-l)}
.faq p{padding:0 22px 20px;color:var(--muted)}
.faq p a{color:var(--blue);font-weight:600}

/* Demo form */
.demo{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center}
.demo__copy h2{font-size:clamp(1.7rem,4vw,2.5rem);margin:6px 0 12px}
.demo__copy p{color:#c5d3ff;margin-bottom:22px}
.qr{display:flex;align-items:center;gap:16px;background:#fff;color:var(--navy);padding:12px 18px 12px 12px;border-radius:14px;width:fit-content;font-weight:700}
.qr img{border-radius:8px;width:120px;height:120px}
.form{padding:28px;display:grid;gap:16px}
.form:hover{transform:none}
.form label{display:grid;gap:6px;font-weight:600;font-size:.92rem}
.form input,.form select{padding:13px 14px;border-radius:12px;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.95);font:inherit;color:var(--ink);width:100%}
.form__err{color:#ffb4b4;font-size:.9rem}

/* Footer */
.footer{background:var(--navy-2);color:#c5d3ff;padding:60px 0 24px}
.footer__grid{display:grid;grid-template-columns:1.2fr 1.2fr .8fr;gap:36px}
.footer h3{color:#fff;margin-bottom:12px;font-size:1.05rem}
.footer address{font-style:normal;line-height:2}
.footer a{text-decoration:none}
.footer a:hover{color:#fff;text-decoration:underline}
.footer ul{list-style:none;line-height:2}
.footer p{margin-top:12px}
.logo--footer{display:inline-block;background:#fff;padding:8px 14px;border-radius:12px}
.footer__copy{text-align:center;margin-top:40px!important;font-size:.85rem;border-top:1px solid rgba(255,255,255,.1);padding-top:20px}

/* Floating WhatsApp */
.wa-float{position:fixed;right:18px;bottom:18px;z-index:150;width:58px;height:58px;border-radius:50%;background:#25D366;color:#fff;display:grid;place-items:center;box-shadow:0 8px 24px rgba(0,0,0,.35);animation:pulse 2.4s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(37,211,102,.6)}70%{box-shadow:0 0 0 16px rgba(37,211,102,0)}100%{box-shadow:0 0 0 0 rgba(37,211,102,0)}}

/* Scroll reveal (only hidden when JS is running, so content never disappears) */
.js .reveal{opacity:0;transform:translateY(26px);transition:opacity .7s,transform .7s}
.js .reveal.in{opacity:1;transform:none}

/* Responsive */
@media (max-width:980px){
  .hero{padding:104px 0 56px;min-height:auto}
  .hero__grid{grid-template-columns:1fr;gap:34px}
  .grid--4{grid-template-columns:repeat(2,1fr)}
  .grid--3{grid-template-columns:1fr}
  .trust__list{grid-template-columns:repeat(2,1fr);gap:14px}
  .timeline{grid-template-columns:1fr;gap:26px;max-width:420px;margin-inline:auto}
  .timeline::before{top:0;bottom:0;left:27px;right:auto;width:3px;height:auto}
  .timeline li{text-align:left;padding-left:76px;min-height:56px}
  .dot{position:absolute;left:0;top:0;margin:0}
  .demo{grid-template-columns:1fr}
  .footer__grid{grid-template-columns:1fr}
  .fi--py{left:-6px}.fi--sql{right:-6px}.fi--aws{left:-6px}.fi--ai{right:-6px}
  .nav__toggle{display:block}
  .nav__links{position:fixed;inset:74px 0 auto 0;flex-direction:column;align-items:stretch;gap:0;background:#fff;padding:0 5%;max-height:0;overflow:hidden;transition:max-height .35s,padding .35s;box-shadow:0 12px 20px rgba(11,31,92,.12)}
  .nav__links.open{max-height:85vh;padding-block:12px;overflow:auto}
  .nav__links a{padding:13px 4px;border-bottom:1px solid #e3eaff}
  .nav__links .btn{margin-top:12px;border:0;color:#fff}
}
@media (max-width:560px){
  .section{padding:64px 0}
  .grid--4{grid-template-columns:1fr}
  .logo img{height:46px}
  .row{grid-template-columns:34px 1fr 70px}
  .row .bar{display:none}
  .hero__cta .btn{width:100%}
  .fi{width:48px;height:48px;font-size:.85rem}
  .trust__list{grid-template-columns:1fr 1fr}
}
@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .js .reveal{opacity:1;transform:none}
  .check{transform:scale(1)}
  .bar i{width:var(--w)}
}
