:root{
    --bg:#090a0c;
    --surface:#101216;
    --surface-2:#15171c;
    --text:#f2f3f5;
    --muted:#9297a2;
    --line:#272a31;
    --accent:#d9ff3f;
    --accent-dark:#b8dc22;
    --max:1180px;
    --radius:18px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
    background:var(--bg);color:var(--text);font-family:Inter,system-ui,sans-serif;
    line-height:1.6;overflow-x:hidden;
}
body:before{
    content:"";position:fixed;inset:0;pointer-events:none;opacity:.035;
    background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E");
    z-index:99;
}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
.container{width:min(calc(100% - 48px),var(--max));margin:auto}
.section{padding:120px 0}
.scroll-progress{position:fixed;top:0;left:0;width:0;height:3px;background:var(--accent);z-index:1000}
.header{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(9,10,12,.78);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.06)}
.nav{height:78px;display:flex;align-items:center;justify-content:space-between}
.logo{font-size:22px;font-weight:800;letter-spacing:-1px}
.logo span{color:var(--accent)}
.nav-links{display:flex;gap:34px}
.nav-links a{font-size:13px;color:#b8bbc3;transition:.25s}
.nav-links a:hover{color:var(--text)}
.menu-toggle{display:none;background:none;border:0;width:34px}
.menu-toggle span{height:2px;background:#fff;display:block;margin:6px 0}

.hero{padding-top:190px;min-height:94vh;display:flex;align-items:center;position:relative}
.hero:after{
    content:"";position:absolute;width:460px;height:460px;right:-200px;top:130px;
    background:radial-gradient(circle,rgba(217,255,63,.09),transparent 68%);pointer-events:none
}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:80px;align-items:center}
.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:11px;font-weight:700;color:#9ca1ab;margin-bottom:18px}
.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--accent);margin-right:8px;box-shadow:0 0 12px rgba(217,255,63,.7)}
.hero h1{font-size:clamp(52px,7vw,88px);line-height:.98;letter-spacing:-5px;max-width:850px}
.hero h1 span,.section-heading h2 span,.future-box h2 span,.contact-copy h2 span{color:var(--accent)}
.hero-role{font-size:19px;font-weight:600;margin-top:25px}
.hero-text{max-width:640px;color:var(--muted);font-size:16px;margin-top:18px}
.hero-actions{display:flex;gap:12px;margin-top:34px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:14px 20px;border-radius:10px;border:1px solid var(--line);font-size:13px;font-weight:700;transition:.25s;cursor:pointer}
.btn-primary{background:var(--accent);color:#0b0c0d;border-color:var(--accent)}
.btn-primary:hover{background:var(--accent-dark);transform:translateY(-2px)}
.btn-secondary{background:transparent;color:var(--text)}
.btn-secondary:hover{background:var(--surface-2);transform:translateY(-2px)}
.social-row{display:flex;gap:22px;margin-top:28px}
.social-row a{font-size:12px;color:#888d98;border-bottom:1px solid #343740;padding-bottom:4px}
.social-row a:hover{color:var(--accent);border-color:var(--accent)}
.hero-card-wrap{position:relative;min-height:440px;display:grid;place-items:center}
.hero-card{
    width:min(100%,390px);aspect-ratio:1/1.2;background:#111318;border:1px solid #30333b;
    border-radius:22px;padding:25px;display:flex;flex-direction:column;justify-content:space-between;
    transform:rotate(4deg);box-shadow:35px 35px 100px rgba(0,0,0,.35)
}
.card-top,.card-bottom{display:flex;justify-content:space-between;color:#858a95;font-size:9px;letter-spacing:1.5px}
.monogram{font-size:130px;letter-spacing:-12px;font-weight:800;color:#e8e9eb;line-height:1}
.hero-outline{position:absolute;width:min(100%,390px);aspect-ratio:1/1.2;border:1px solid rgba(217,255,63,.28);border-radius:22px;transform:rotate(-6deg) translate(20px,10px);z-index:-1}

.section-heading{display:grid;grid-template-columns:100px 1fr;gap:25px;align-items:start;margin-bottom:65px}
.section-number{font-size:11px;color:var(--accent);font-weight:700;letter-spacing:2px}
.section-heading h2{font-size:clamp(40px,5vw,65px);line-height:1.02;letter-spacing:-3px}

.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}
.about-text{font-size:18px;color:#a9adb5;max-width:650px}
.about-text p+p{margin-top:25px}
.about-text strong{color:var(--text)}
.stats{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}
.stat{padding:25px 10px;border-bottom:1px solid var(--line)}
.stat:nth-child(odd){border-right:1px solid var(--line)}
.stat strong{display:block;font-size:42px;letter-spacing:-2px}
.stat span{font-size:11px;text-transform:uppercase;letter-spacing:1.5px;color:#7e838e}

.skills-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.skill-card{padding:35px 30px;min-height:230px;border-right:1px solid var(--line);position:relative}
.skill-card:last-child{border-right:0}
.skill-index{font-size:10px;color:#666b75}
.skill-card h3{font-size:27px;margin:55px 0 22px;letter-spacing:-1px}
.tags{display:flex;flex-wrap:wrap;gap:7px}
.tags span{font-size:11px;border:1px solid #30333b;color:#9ea3ad;padding:6px 9px;border-radius:6px}

.education-card{border:1px solid var(--line);background:linear-gradient(120deg,#111318,#0d0f12);border-radius:var(--radius);padding:45px;display:grid;grid-template-columns:180px 1fr;gap:40px}
.edu-year{font-size:12px;color:var(--accent);font-weight:700}
.edu-label{text-transform:uppercase;letter-spacing:2px;color:#777c86;font-size:10px}
.edu-content h3{font-size:30px;letter-spacing:-1px;margin:8px 0}
.edu-content>p:not(.edu-label){color:#969ba5}
.edu-badge{display:inline-block;margin-top:20px;border:1px solid #33363e;border-radius:999px;padding:7px 12px;font-size:10px;color:#9da2ac}

.project-list{border-top:1px solid var(--line)}
.project{display:grid;grid-template-columns:90px 1fr auto;gap:30px;align-items:center;padding:32px 10px;border-bottom:1px solid var(--line);transition:.3s}
.project:hover{background:#0d0f12;padding-left:20px;padding-right:20px}
.project-number{color:#5f646e;font-size:12px}
.project-info p{font-size:10px;text-transform:uppercase;letter-spacing:1.5px;color:var(--accent);margin-bottom:4px}
.project-info h3{font-size:25px;letter-spacing:-1px}
.project-info span{font-size:13px;color:#858a94}
.project-link{font-size:12px;color:#aeb3bc}
.project-link:hover{color:var(--accent)}

.future{padding-top:40px}
.future-box{border:1px solid #30333a;background:var(--surface);border-radius:var(--radius);padding:70px;text-align:center}
.future-box h2{font-size:clamp(35px,5vw,62px);line-height:1.04;letter-spacing:-3px}
.future-box>p:last-child{color:#898e98;margin:20px auto 0;max-width:520px}

.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px;align-items:start}
.contact-copy h2{font-size:clamp(55px,7vw,90px);line-height:.95;letter-spacing:-5px;margin-bottom:25px}
.contact-copy>p:not(.eyebrow){color:#9297a1;max-width:430px}
.email-link{display:inline-flex;gap:14px;margin-top:30px;padding-bottom:8px;border-bottom:1px solid #3a3d45;font-size:14px}
.email-link:hover{color:var(--accent);border-color:var(--accent)}
.contact-form{display:flex;flex-direction:column;gap:22px}
.contact-form label{display:flex;flex-direction:column;gap:9px;font-size:10px;text-transform:uppercase;letter-spacing:1.5px;color:#838893}
.contact-form input,.contact-form textarea{background:#101216;border:1px solid #292c33;color:var(--text);padding:14px;border-radius:8px;outline:none;resize:vertical}
.contact-form input:focus,.contact-form textarea:focus{border-color:#616671}
.contact-form .btn{align-self:flex-start}

.footer{border-top:1px solid var(--line);padding:25px 0;color:#676c76;font-size:10px;text-transform:uppercase;letter-spacing:1px}
.footer-inner{display:flex;justify-content:space-between;gap:20px}

.reveal{opacity:0;transform:translateY(25px);transition:opacity .7s ease,transform .7s ease}
.reveal.visible{opacity:1;transform:none}

@media(max-width:850px){
    .container{width:min(calc(100% - 32px),var(--max))}
    .nav{height:68px}
    .menu-toggle{display:block}
    .nav-links{display:none;position:absolute;top:68px;left:0;right:0;background:#0b0c0f;border-bottom:1px solid var(--line);padding:20px 24px;flex-direction:column;gap:20px}
    .nav-links.open{display:flex}
    .hero{padding-top:130px}
    .hero-grid{grid-template-columns:1fr;gap:55px}
    .hero-card-wrap{min-height:330px}
    .hero-card,.hero-outline{width:min(80vw,330px)}
    .monogram{font-size:100px}
    .section{padding:85px 0}
    .section-heading{grid-template-columns:45px 1fr;gap:10px;margin-bottom:45px}
    .about-grid,.contact-grid{grid-template-columns:1fr;gap:45px}
    .skills-grid{grid-template-columns:1fr}
    .skill-card{border-right:0;border-bottom:1px solid var(--line)}
    .skill-card:last-child{border-bottom:0}
    .education-card{grid-template-columns:1fr;gap:15px;padding:30px}
    .edu-content h3{font-size:24px}
    .project{grid-template-columns:45px 1fr}
    .project-link{grid-column:2}
    .future-box{padding:45px 25px}
    .footer-inner{flex-direction:column}
}
