@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&family=Space+Grotesk:wght@500;600;700&display=swap');

:root{
  --ink:#111319;
  --muted:#676b76;
  --paper:#f7f6f2;
  --white:#fff;
  --line:#deddd7;
  --soft:#ecebe5;
  --accent:#e84b2a;
  --accent-2:#f4c15d;
  --dark:#111319;
  --radius:24px;
  --container:min(1160px,calc(100% - 48px));
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:Manrope,system-ui,sans-serif;background:var(--paper);color:var(--ink);line-height:1.6}
a{color:inherit;text-decoration:none}
button{font:inherit}
.container{width:var(--container);margin-inline:auto}
.site-shell{overflow:hidden}
.nav-wrap{position:sticky;top:0;z-index:20;background:rgba(247,246,242,.88);backdrop-filter:blur(18px);border-bottom:1px solid rgba(222,221,215,.8)}
.nav{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:26px}
.brand{font-family:'Space Grotesk',sans-serif;font-weight:700;letter-spacing:.08em;font-size:13px;display:flex;align-items:center;gap:10px}
.brand-dot{display:block;width:10px;height:10px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 5px rgba(232,75,42,.10)}
.nav-links{display:flex;align-items:center;gap:28px;color:#494d57;font-size:13px;font-weight:600}
.nav-links a{position:relative}
.nav-links a:after{content:'';position:absolute;height:1px;left:0;right:100%;bottom:-5px;background:var(--accent);transition:right .2s}
.nav-links a:hover:after{right:0}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:0 20px;border-radius:999px;font-weight:700;font-size:13px;transition:transform .2s,box-shadow .2s,background .2s}
.btn:hover{transform:translateY(-2px)}
.btn-primary{background:var(--ink);color:#fff;box-shadow:0 14px 30px rgba(17,19,25,.12)}
.btn-primary:hover{box-shadow:0 18px 34px rgba(17,19,25,.18)}
.btn-ghost{border:1px solid var(--line);background:rgba(255,255,255,.45)}
.btn-ghost:hover{background:#fff}
.btn-small{min-height:42px;padding:0 16px;font-size:12px}

.hero{min-height:720px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:80px;padding:86px 0 82px}
.eyebrow,.section-kicker{font-family:'DM Mono',monospace;font-size:11px;font-weight:500;letter-spacing:.12em;color:#73767d}
.eyebrow{display:flex;align-items:center;gap:9px;margin-bottom:24px}
.eyebrow span{width:7px;height:7px;background:var(--accent);display:inline-block;border-radius:50%}
.hero h1,.section-heading h2,.contact-inner h2{font-family:'Space Grotesk',sans-serif;line-height:.98;letter-spacing:-.055em;font-size:clamp(52px,6.3vw,86px);max-width:730px}
.hero h1 em,.section-heading h2 em,.contact-inner h2 em{font-style:normal;color:var(--accent)}
.hero-lead{font-size:17px;max-width:635px;color:#555a65;margin:27px 0 30px}
.hero-lead strong{color:var(--ink)}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}
.hero-meta{display:flex;gap:35px;flex-wrap:wrap;margin-top:46px;padding-top:21px;border-top:1px solid var(--line)}
.hero-meta div{display:flex;flex-direction:column;gap:2px;font-size:12px;color:#2e3139}
.meta-label{font-family:'DM Mono',monospace;font-size:10px;color:#888b92;letter-spacing:.08em;text-transform:uppercase}
.hero-art{position:relative;height:520px;display:grid;place-items:center}
.grid-card{width:min(390px,80%);height:450px;border:1px solid rgba(17,19,25,.2);background:linear-gradient(135deg,#f1efe7,#fff);border-radius:30px;box-shadow:0 30px 80px rgba(32,29,23,.16);padding:28px;display:flex;flex-direction:column;justify-content:space-between;position:relative;z-index:2;transform:rotate(-6deg)}
.grid-card:before,.grid-card:after{content:'';position:absolute;inset:17px;border:1px dashed rgba(17,19,25,.12);border-radius:20px;pointer-events:none}
.grid-top,.grid-bottom{display:flex;justify-content:space-between;font-family:'DM Mono',monospace;font-size:10px;letter-spacing:.1em;color:#5c6069;position:relative;z-index:1}
.code-stack{display:grid;gap:12px;position:relative;z-index:1}
.code-line{height:14px;border-radius:999px;background:#1f2229;opacity:.88}
.w-80{width:80%}.w-55{width:55%;opacity:.35}.w-90{width:90%;opacity:.58}.w-65{width:65%;opacity:.28}.w-42{width:42%;opacity:.75}.w-72{width:72%;opacity:.44}
.orb{position:absolute;border-radius:50%;filter:blur(.2px)}
.orb-a{width:230px;height:230px;background:rgba(232,75,42,.85);right:0;top:22px;box-shadow:0 35px 80px rgba(232,75,42,.28)}
.orb-b{width:150px;height:150px;background:rgba(244,193,93,.82);left:18px;bottom:28px;box-shadow:0 25px 70px rgba(244,193,93,.3)}
.floating-note{position:absolute;background:var(--ink);color:#fff;border-radius:999px;padding:11px 15px;font:500 10px 'DM Mono',monospace;letter-spacing:.09em;z-index:3;box-shadow:0 14px 30px rgba(0,0,0,.17)}
.note-one{top:94px;left:0}.note-two{right:6px;bottom:110px;background:#fff;color:var(--ink);border:1px solid var(--line)}

.marquee{border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;background:#f0efe9}
.marquee-track{width:max-content;display:flex;align-items:center;gap:20px;min-height:64px;padding:0 10px;animation:scroll 28s linear infinite;font:500 11px 'DM Mono',monospace;letter-spacing:.12em;color:#444851}
.marquee-track b{font-size:14px;color:var(--accent);font-weight:400}
@keyframes scroll{to{transform:translateX(-50%)}}

.section{padding:128px 0}
.section-tinted{background:#eeece5;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.section-heading{margin-bottom:65px}
.section-kicker{margin-bottom:18px}
.section-heading h2{font-size:clamp(43px,5.2vw,68px);max-width:820px}
.about-grid{display:grid;grid-template-columns:1fr .72fr;gap:100px;align-items:start}
.about-copy{max-width:680px;color:#565b65;font-size:16px}
.about-copy p+p{margin-top:19px}
.large-copy{font-family:'Space Grotesk',sans-serif;font-size:27px;line-height:1.2;letter-spacing:-.03em;color:var(--ink)}
.facts-card{border-top:1px solid var(--ink)}
.fact{display:grid;grid-template-columns:48px 1fr;gap:4px 15px;padding:17px 0;border-bottom:1px solid var(--line)}
.fact span{font:500 10px 'DM Mono',monospace;color:#94979d}.fact strong{font-size:14px}.fact small{grid-column:2;color:#777b84;font-size:11px}

.skills-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}
.skill-card{background:#f8f7f2;border:1px solid #dbdad2;border-radius:20px;padding:28px;min-height:255px;position:relative;transition:transform .22s,border-color .22s,box-shadow .22s}
.skill-card:hover{transform:translateY(-5px);border-color:#c6c4bb;box-shadow:0 22px 45px rgba(17,19,25,.07)}
.skill-num{font:500 10px 'DM Mono',monospace;color:#9699a0}.skill-card h3{font-family:'Space Grotesk',sans-serif;font-size:28px;letter-spacing:-.035em;margin:28px 0 9px}.skill-card p{color:#60646d;font-size:13px;max-width:420px}.tags,.project-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:24px}.tags span,.project-tags span{border:1px solid #d8d7cf;background:#eeece5;border-radius:999px;padding:6px 9px;font:500 9px 'DM Mono',monospace;color:#595d65}

.projects-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:56px}.projects-head h2{font-family:'Space Grotesk',sans-serif;font-size:clamp(43px,5vw,67px);letter-spacing:-.05em;line-height:1}.projects-head h2 em{font-style:normal;color:var(--accent)}.projects-head p{max-width:350px;color:#686c75;font-size:13px}
.project-list{border-top:1px solid var(--line)}
.project-card{display:grid;grid-template-columns:72px 1fr 42px;gap:24px;padding:33px 5px;border-bottom:1px solid var(--line);align-items:start;transition:padding-left .25s,background .25s}
.project-card:hover{padding-left:18px;background:rgba(255,255,255,.38)}
.project-card.featured{background:#111319;color:#fff;border-radius:20px;margin-bottom:9px;border:0;padding:33px 24px}.project-card.featured:hover{padding-left:37px;background:#171a20}
.project-index{font:500 11px 'DM Mono',monospace;color:#92959d}.featured .project-index{color:#777b84}
.project-type{font:500 10px 'DM Mono',monospace;letter-spacing:.11em;color:#90939b}.featured .project-type{color:#9d9fa7}
.project-content h3{font-family:'Space Grotesk',sans-serif;font-size:39px;letter-spacing:-.045em;margin:7px 0}.project-content p{max-width:740px;color:#666a73;font-size:14px}.featured .project-content p{color:#b5b7bd}.project-arrow{font-size:24px;color:#777b84}.featured .project-arrow{color:#fff}

.section-dark{background:var(--dark);color:#fff}.light{color:#858991}.section-dark .section-heading h2{color:#fff}.section-dark .section-heading h2 em{color:var(--accent-2)}
.education-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:90px;align-items:center}.education-card{border:1px solid #363941;border-radius:24px;padding:31px;background:linear-gradient(145deg,#171a21,#101217);box-shadow:inset 0 1px rgba(255,255,255,.03)}.edu-top,.edu-bottom{display:flex;justify-content:space-between;gap:20px;font:500 10px 'DM Mono',monospace;color:#858992;letter-spacing:.1em}.education-card h3{font-family:'Space Grotesk',sans-serif;font-size:37px;letter-spacing:-.04em;line-height:1.05;margin:66px 0 17px;max-width:600px}.edu-school{color:#aeb1b8;font-size:14px}.edu-bottom{border-top:1px solid #32353d;margin-top:54px;padding-top:18px}.edu-bottom strong{color:#fff;font-family:Manrope;font-size:11px;letter-spacing:0}

.profile-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:15px}.profile-block{border-top:1px solid var(--line);padding:25px 0;min-height:190px}.profile-block h3{font-family:'Space Grotesk',sans-serif;font-size:22px;letter-spacing:-.03em;margin-bottom:18px}.profile-block ul{list-style:none;color:#62666e;font-size:13px;display:grid;gap:8px}.profile-block li:before{content:'✦';color:var(--accent);font-size:9px;margin-right:9px}.language-row{display:flex;justify-content:space-between;max-width:430px;border-bottom:1px solid var(--line);padding:10px 0;color:#565a63;font-size:13px}.language-row strong{color:var(--ink)}.interest-cloud{display:flex;gap:9px;flex-wrap:wrap}.interest-cloud span{font-size:13px;padding:9px 12px;border:1px solid var(--line);border-radius:999px;background:#f2f1eb}.profile-block p{color:#696d75;font-size:13px}

.contact-section{background:#e8e5db;border-top:1px solid var(--line);padding:125px 0 110px}.contact-inner{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:end}.contact-inner h2{font-size:clamp(53px,6vw,79px)}.contact-inner>div:first-child p{color:#666a73;margin-top:24px;font-size:14px}.contact-links{border-top:1px solid #c9c7bf}.contact-links a{display:grid;grid-template-columns:90px 1fr 20px;gap:14px;padding:19px 0;border-bottom:1px solid #c9c7bf;align-items:center}.contact-links a span{font:500 10px 'DM Mono',monospace;letter-spacing:.08em;color:#858890}.contact-links a strong{font-size:13px}.contact-links a>span:last-child{font-size:17px;color:#676b73;text-align:right}

.footer{min-height:75px;display:flex;justify-content:space-between;align-items:center;gap:20px;color:#777b82;font:500 9px 'DM Mono',monospace;letter-spacing:.05em}.footer a{color:var(--ink)}
.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}
@media (max-width:900px){
  :root{--container:min(100% - 32px,760px)}
  .nav{min-height:70px}.nav-links{display:none}.nav .btn{margin-left:auto}
  .hero{grid-template-columns:1fr;gap:45px;padding-top:70px}.hero-art{height:450px}.hero h1{max-width:700px}.hero-meta{gap:22px}
  .about-grid,.education-grid,.contact-inner{grid-template-columns:1fr;gap:45px}.skills-grid,.profile-grid{grid-template-columns:1fr}
  .section{padding:92px 0}.projects-head{align-items:start;flex-direction:column}.education-card h3{margin-top:50px}
}
@media (max-width:560px){
  :root{--container:calc(100% - 24px)}
  .nav .btn-small{font-size:0;gap:0;width:42px;padding:0}.nav .btn-small span{font-size:18px}.brand{font-size:11px}
  .hero{padding-top:55px;min-height:auto}.hero h1{font-size:49px}.hero-lead{font-size:15px}.hero-meta{display:grid;grid-template-columns:1fr 1fr}.hero-meta div:last-child{grid-column:1/-1}
  .hero-art{height:380px}.grid-card{height:330px;width:275px;padding:20px}.orb-a{width:150px;height:150px}.orb-b{width:105px;height:105px}.note-one{top:25px}.note-two{bottom:30px;right:0}
  .section-heading h2,.projects-head h2{font-size:43px}.large-copy{font-size:23px}.project-card{grid-template-columns:42px 1fr 20px;gap:14px;padding-block:28px}.project-card.featured{padding:28px 17px}.project-card.featured:hover{padding-left:23px}.project-content h3{font-size:31px}.project-content p{font-size:13px}.project-arrow{font-size:19px}
  .education-card{padding:22px}.education-card h3{font-size:30px}.contact-inner h2{font-size:49px}.contact-links a{grid-template-columns:70px 1fr 18px}.footer{padding:18px 0;flex-wrap:wrap}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.marquee-track{animation:none}.reveal{opacity:1;transform:none;transition:none}}
