/*
Theme Name: Rajan Yadav — Story Portfolio V3
Author: Rajan Yadav
Description: Story-driven animated personal portfolio inspired by the supplied reference structure.
Version: 3.0
*/
:root{--bg:#050b14;--bg2:#091426;--card:#0c1728;--text:#f7f9fc;--muted:#9eacbf;--gold:#f5bd45;--cyan:#55d5ff;--blue:#5b7cff;--line:rgba(255,255,255,.1);--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 8% 0%,rgba(91,124,255,.17),transparent 27%),radial-gradient(circle at 90% 15%,rgba(85,213,255,.1),transparent 24%),var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}.wrap{width:min(var(--max),calc(100% - 36px));margin:auto}
.topbar{position:fixed;z-index:100;left:0;right:0;top:0;background:rgba(5,11,20,.78);backdrop-filter:blur(18px);border-bottom:1px solid transparent}.topbar.scrolled{border-color:var(--line)}.nav{height:74px;display:flex;align-items:center;justify-content:space-between}.brand{font-weight:950;font-size:21px;letter-spacing:-.03em}.brand span{color:var(--gold)}.navlinks{display:flex;gap:22px;color:var(--muted);font-size:13px;font-weight:700}.navlinks a:hover{color:#fff}
.hero{min-height:100vh;display:flex;align-items:center;padding:135px 0 80px}.hero-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:65px;align-items:center}.eyebrow{display:inline-flex;gap:9px;align-items:center;color:var(--cyan);font-size:12px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.pulse{width:7px;height:7px;background:var(--gold);border-radius:50%;box-shadow:0 0 18px var(--gold)}h1{font-size:clamp(50px,7vw,92px);line-height:.93;letter-spacing:-.065em;margin:18px 0}h1 span{color:var(--gold)}.hero p{font-size:19px;color:var(--muted);max-width:720px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 17px;border:1px solid var(--line);border-radius:12px;font-weight:850;transition:.3s}.btn:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(0,0,0,.2)}.primary{background:linear-gradient(135deg,var(--gold),#ff8d3b);color:#07101c;border:0}
.hero-art{position:relative}.portrait{width:min(410px,85vw);aspect-ratio:1;margin:auto;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#163660,#07101c 65%);border:1px solid var(--line);box-shadow:0 0 100px rgba(91,124,255,.2),inset 0 0 70px rgba(85,213,255,.05);overflow:hidden}.portrait:before,.portrait:after{content:"";position:absolute;border:1px solid rgba(85,213,255,.25);border-radius:50%;inset:7%;animation:spin 18s linear infinite}.portrait:after{inset:20%;border-color:rgba(245,189,69,.18);animation-direction:reverse;animation-duration:12s}.monogram{width:185px;height:185px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,var(--gold),var(--blue));color:#06101c;font-size:58px;font-weight:950;z-index:2}.float{position:absolute;z-index:4;padding:9px 12px;border:1px solid var(--line);background:rgba(5,11,20,.9);border-radius:10px;font-size:11px;font-weight:900;animation:float 4s ease-in-out infinite}.f1{left:0;top:17%}.f2{right:0;top:38%;animation-delay:.7s}.f3{left:13%;bottom:11%;animation-delay:1.2s}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:30px}.stat{padding:15px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.035)}.stat strong{display:block;color:var(--gold);font-size:27px;line-height:1}.stat small{display:block;color:var(--muted);font-size:11px;margin-top:6px}
section{padding:100px 0}.heading{margin-bottom:42px}.kicker{color:var(--gold);font-size:11px;font-weight:950;letter-spacing:.17em;text-transform:uppercase}.heading h2{font-size:clamp(34px,4.5vw,58px);line-height:1;letter-spacing:-.05em;margin:8px 0}.heading p{color:var(--muted);max-width:680px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.card{background:rgba(255,255,255,.04);border:1px solid var(--line);border-radius:18px;padding:24px;transition:.35s;position:relative;overflow:hidden}.card:before{content:"";position:absolute;width:170px;height:170px;right:-90px;top:-90px;border-radius:50%;background:radial-gradient(circle,rgba(85,213,255,.11),transparent 68%)}.card:hover{transform:translateY(-7px);border-color:rgba(85,213,255,.35)}.card h3{margin:0 0 7px;font-size:20px}.card p{margin:0;color:var(--muted);font-size:14px}.taglist{display:flex;flex-wrap:wrap;gap:7px;margin-top:15px}.tag{padding:6px 9px;border:1px solid var(--line);border-radius:999px;color:#dce4ef;font-size:11px}
.tablewrap{overflow:auto;border:1px solid var(--line);border-radius:16px}.edu{width:100%;border-collapse:collapse;min-width:700px}.edu th,.edu td{padding:15px;text-align:left;border-bottom:1px solid var(--line);font-size:13px}.edu th{color:var(--gold);background:rgba(245,189,69,.055)}.edu td{color:#dbe3ee}.edu tr:last-child td{border:0}
.timeline{position:relative;max-width:920px;margin:auto}.timeline:before{content:"";position:absolute;left:15px;top:0;bottom:0;width:2px;background:linear-gradient(var(--gold),var(--cyan),transparent)}.step{position:relative;padding:0 0 42px 58px}.step:before{content:"";position:absolute;left:7px;top:5px;width:17px;height:17px;border-radius:50%;background:var(--bg);border:3px solid var(--gold);box-shadow:0 0 0 6px rgba(245,189,69,.05)}.date{font-size:11px;color:var(--cyan);font-weight:950;letter-spacing:.14em}.step h3{margin:5px 0;font-size:24px}.step p{margin:0;color:var(--muted)}
.projects{display:grid;grid-template-columns:repeat(2,1fr);gap:17px}.project{min-height:220px;display:flex;flex-direction:column;justify-content:space-between}.project .type{color:var(--cyan);font-size:11px;font-weight:950;letter-spacing:.12em}.project .link{color:var(--gold);font-weight:850;font-size:13px}
.achievement{display:grid;grid-template-columns:70px 1fr;gap:17px;align-items:start}.icon{width:58px;height:58px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(145deg,rgba(245,189,69,.2),rgba(85,213,255,.1));border:1px solid var(--line);font-size:25px}
.contactgrid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.contact a{color:var(--cyan)}footer{border-top:1px solid var(--line);padding:28px 0;color:var(--muted);font-size:12px}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s ease}.reveal.show{opacity:1;transform:none}@keyframes float{50%{transform:translateY(-9px)}}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:880px){.hero-grid,.contactgrid{grid-template-columns:1fr}.hero-art{order:-1}.cards{grid-template-columns:1fr 1fr}.stats{grid-template-columns:1fr 1fr}.navlinks{display:none}.projects{grid-template-columns:1fr}}
@media(max-width:560px){.wrap{width:calc(100% - 26px)}section{padding:75px 0}.cards{grid-template-columns:1fr}.hero h1{font-size:53px}.hero p{font-size:16px}.monogram{width:155px;height:155px;font-size:48px}}
