/* IIT Kanpur Placement Data — standalone project page, in the annygator portfolio style (shared tokens, masthead and buttons copied from empathy-kit).
   Colours/type are the portfolio's: #0d0a08 / #000 backgrounds, #f5f0e8 text, #ff6b00 accent,
   #e01ffd → #1c19d7 gradient, cyan hairline, Chakra Petch / Inter / Share Tech Mono (same as the portfolio). */
:root {
  color-scheme: dark;
  --bg:#0d0a08; --bg2:#000; --text:#f5f0e8; --muted:rgba(245,240,232,.72); --subtle:rgba(245,240,232,.62);
  --accent:#ff6b00; --accent-hi:#ff8a33; --accent-soft:#ffb36b; --eyebrow:#ffb36b; --focus:#ffb36b;
  --pink:#ff6b00; --blue:#ffb36b; --hair:rgba(255,255,255,.14); --cyan:rgba(255,107,0,.15);
  --grad:linear-gradient(90deg,#ff6b00 0%,#ffb36b 100%);
  font-family:'Inter',sans-serif; font-synthesis:none; background:var(--bg); color:var(--text);
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; min-height:100vh; background:var(--bg); overflow-x:hidden; -webkit-font-smoothing:antialiased; }
a { color:inherit; text-decoration:none; }
button { font:inherit; color:inherit; }
a, button { -webkit-tap-highlight-color:transparent; }
:focus-visible { outline:2px solid var(--focus); outline-offset:3px; border-radius:6px; }
main { outline:none; position:relative; z-index:1; }
.ek-glow { position:fixed; inset:0; z-index:0; pointer-events:none;
  background:radial-gradient(circle at 88% 14%,rgba(255,107,0,.14),transparent 34%),radial-gradient(circle at 14% 78%,rgba(255,179,107,.07),transparent 36%); }

/* ===== Portfolio typography: Chakra Petch (display) · Inter (body) · Share Tech Mono (labels, buttons) ===== */
:root { --display:'Chakra Petch',sans-serif; --body:'Inter',sans-serif; --mono:'IBM Plex Sans Condensed', sans-serif;}
body, p, li { font-family:var(--body); }
h1, h2, h3, .ek-word, .ek-ctl__val, .ek-voice blockquote { font-family:var(--display); letter-spacing:-.035em; }
.ek-hero h1, .ek-hub h1, .ek-sec .ek-head h2 { font-weight:700; letter-spacing:-.035em; }
.ek-voice blockquote { font-weight:600; letter-spacing:-.02em; }
.ek-kicker, .ek-eyebrow { font-size:14px; letter-spacing:.12em; }
.ek-card h3, .ek-ctl__top b, .ek-voice cite { font-size:13px; letter-spacing:.14em; }
.ek-ticks { font-size:13px; }
.ek-note, .ek-small { font-family:var(--body); }

/* CTA: the portfolio's chamfered neon-outline button (dot + label, dot slides across on hover, ripple on click) */
.ek-btn { position:relative; display:inline-grid; place-items:center; min-width:208px; height:50px; padding:0 26px; border:0; background:transparent; color:#faf7ff; cursor:pointer; text-decoration:none; white-space:nowrap;
  font-family:var(--mono); font-size:16px;  letter-spacing:.055em; text-transform:uppercase; transition:transform .15s ease-out; -webkit-tap-highlight-color:transparent; font-weight: 400;}
.ek-btn:active { transform:scale(.97); }
.ek-btn__o { position:absolute; z-index:0; inset:0; width:100%; height:100%; overflow:visible; pointer-events:none; }
.ek-btn__o path { fill:none; stroke:#ff6b00; stroke-width:1.5; vector-effect:non-scaling-stroke; stroke-linejoin:round;
  filter:drop-shadow(0 0 3px rgba(255,107,0,.85)) drop-shadow(0 0 8px rgba(255,107,0,.35)); transition:stroke .25s ease,filter .25s ease,fill .25s ease; }
.ek-btn:hover .ek-btn__o path, .ek-btn:focus-visible .ek-btn__o path { stroke:#ff8a33; filter:drop-shadow(0 0 4px rgba(255,138,51,.95)) drop-shadow(0 0 11px rgba(255,107,0,.48)); }
.ek-btn__c { position:relative; z-index:2; display:inline-flex; align-items:center; justify-content:center; }
.ek-btn__l { margin-left:16px; transition:transform .46s cubic-bezier(.22,1,.36,1); }
.ek-btn__dot { position:absolute; left:0; top:50%; width:9px; height:9px; margin-top:-4.5px; border-radius:50%; background:#bd77ff;
  box-shadow:0 0 5px #d7a5ff,0 0 13px rgba(179,102,255,.9); animation:ek-blink 1.5s ease-in-out infinite; transition:left .46s cubic-bezier(.22,1,.36,1); }
.ek-btn:hover .ek-btn__dot, .ek-btn:focus-visible .ek-btn__dot { left:calc(100% - 9px); }
.ek-btn:hover .ek-btn__l, .ek-btn:focus-visible .ek-btn__l { transform:translateX(-16px); }
.ek-btn__r { position:absolute; z-index:3; left:var(--ripple-x,50%); top:var(--ripple-y,50%); width:20px; height:20px; margin:-10px; border:1px solid #d7a5ff; border-radius:50%; opacity:0; pointer-events:none; }
.ek-btn.is-clicked .ek-btn__r { animation:ek-ripple .6s ease-out; }
@keyframes ek-blink { 0%,100% { opacity:1; } 50% { opacity:.15; } }
@keyframes ek-ripple { 0% { transform:scale(.2); opacity:.8; } 100% { transform:scale(18); opacity:0; } }
.ek-btn--lg { min-width:260px; height:58px; font-size:18px; }
.ek-btn--sm { min-width:0; height:44px; padding:0 22px; font-size:14px; }
.ek-btn--sm .ek-btn__l { margin-left:0; } .ek-btn--sm .ek-btn__dot { display:none; }
.ek-btn--sm:hover .ek-btn__l { transform:none; }
.ek-btn--sm b { font-weight:400; color:var(--accent); margin-right:10px; }
.ek-btn.is-on .ek-btn__o path { stroke:#ffb36b; fill:rgba(255,107,0,.16); }
.ek-sound { justify-self:end; min-width:168px; height:44px; font-size:14px; }
.ek-sound[aria-pressed="false"] .ek-btn__dot { opacity:.4; animation:none; }
.ek-cta { display:flex; margin-top:34px; }
@media (max-width:700px) { .ek-btn { height:46px; min-width:170px; font-size:14px; } .ek-btn--lg { min-width:220px; height:52px; font-size:16px; } .ek-sound { min-width:130px; height:40px; } }
@media (prefers-reduced-motion:reduce) { .ek-btn__dot { animation:none; } .ek-btn__l, .ek-btn__dot { transition:none; } }

.masthead { position:fixed; z-index:90; top:14px; left:2.5%; right:2.5%; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:32px; padding:10px 2%; min-height:72px;
  background:rgba(0,0,0,.18); border:1px solid rgba(255,107,0,.15); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); transition:background .3s ease,box-shadow .3s ease,border-color .3s ease; }
.masthead.is-floating { background:rgba(13,10,8,.72); border-color:rgba(255,107,0,.22); box-shadow:0 12px 32px rgba(0,0,0,.45),0 0 0 1px rgba(255,107,0,.06); }
.wordmark { justify-self:start; color:#fff; font-family:var(--display); font-size:30px; font-weight:700; line-height:1; letter-spacing:-.035em; transition:letter-spacing .25s,color .25s,transform .2s; }
.wordmark:hover { color:#e0c9ff; } .wordmark:active { transform:scale(.96); }
.main-nav { display:flex; align-items:center; gap:48px; }
.nav-link { position:relative; border:0; background:transparent; padding:16px 0 12px; min-height:64px; font-family:var(--mono); font-size:20px;  font-synthesis:weight; line-height:1; letter-spacing:.08em; text-transform:uppercase; color:#faf7ff; cursor:pointer; transition:color .25s,transform .2s; font-weight: 400;}
.nav-link span { display:inline-block; transition:transform .3s cubic-bezier(.2,.8,.2,1); }
.nav-link::after { content:''; position:absolute; bottom:5px; height:1px; left:3px; right:3px; background:#ffb36b; transform:scaleX(0); transition:transform .3s; }
.nav-link:hover { color:#dec7ff; } .nav-link:hover span { transform:translateY(-3px); } .nav-link:hover::after { transform:scaleX(1); transform-origin:center; }

/* 5 Oct: nav items are links back to the landing page now (were inert buttons) */
a.nav-link { display:inline-flex; align-items:center; text-decoration:none; }

/* smooth arrival from the landing page */
@keyframes pj-in{from{opacity:0}to{opacity:1}}
@media (prefers-reduced-motion:no-preference){body{animation:pj-in .45s ease-out backwards}}

/* smooth arrival from the landing page */
@keyframes pj-in{from{opacity:0}to{opacity:1}}
@media (prefers-reduced-motion:no-preference){body{animation:pj-in .45s ease-out backwards}}
