:root{--background:#f7f3ec;--background-soft:#e8dfd2;--text:#111;--muted-text:#7a746c;--accent:#111;--accent-light:#efe8dd;--pink:#b98a7a;--pink-dark:#8a5e52;--pink-light:#e8d2c8;--card:#fffcf7;--gold:#c8a96a;--border:#ded6cb;--shadow-soft:0 18px 45px #11111114;--shadow-hover:0 24px 60px #11111121;font-family:Inter,sans-serif}h1,h2{font-optical-sizing:auto;color:var(--text);font-variation-settings:"SOFT" 0, "WONK" 0;font-family:Fraunces,serif;font-style:normal;font-weight:400;line-height:.95}*{box-sizing:border-box;margin:0;padding:0}body{background:radial-gradient(circle at top left, #ffffffe6, transparent 35%), linear-gradient(120deg, var(--background-soft), var(--background));color:var(--text);font-family:Inter,sans-serif;line-height:1.6}.button{cursor:pointer;border-radius:999px;justify-content:center;align-items:center;padding:.85rem 1.35rem;font-weight:700;text-decoration:none;transition:transform .2s,box-shadow .2s;display:inline-flex}html{scroll-behavior:smooth}.button:hover{background-color:var(--accent-light);box-shadow:var(--shadow-hover);transform:translateY(-2px)}.section-title:after{content:"";border-bottom:2px dashed var(--accent);width:90px;margin-top:.75rem;display:block}.fade-in-up{opacity:0;transition:opacity .65s,transform .65s;transform:translateY(28px)}.fade-in-up.visible{opacity:1;transform:translateY(0)}.site-header{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:10;background:#f7f3ecbf;border-bottom:1px solid #ded6cbb3;position:sticky;top:0}.section{max-width:1100px;margin:0 auto;padding:5rem 1.5rem}.section h2{margin-bottom:1rem;font-size:2.5rem}.section p{max-width:750px;font-size:1.1rem}.navbar{justify-content:space-between;align-items:center;max-width:1100px;margin:0 auto;padding:1rem 1.5rem;display:flex}.logo{color:var(--text);font-size:1.1rem;font-weight:800;text-decoration:none}.nav-links{gap:1.5rem;list-style:none;display:flex}.nav-links a{color:var(--text);font-weight:500;text-decoration:none}.nav-links a:hover{color:var(--muted-text)}.nav-social-divider{background:var(--border);align-self:center;width:1px;height:1.1rem;list-style:none}.nav-social-link{color:var(--text);align-items:center;font-size:1.25rem;text-decoration:none;transition:color .2s;display:flex}.nav-social-link:hover{color:var(--muted-text)}@keyframes slideIn{0%{opacity:0;transform:translate(-100%)}to{opacity:1;transform:translate(0)}}.hero{background-image:radial-gradient(circle,#1111110e 1px,#0000 1px);background-size:28px 28px;grid-template-columns:1.1fr .9fr;align-items:center;gap:4rem;min-height:100vh;padding:6rem 8%;display:grid}.hero-content{max-width:720px}.open-to-work-badge{color:#15803d;letter-spacing:.03em;background:#22c55e1a;border:1px solid #22c55e4d;border-radius:999px;justify-content:center;align-items:center;gap:.5rem;margin-bottom:1rem;padding:.3rem .85rem;font-size:.78rem;font-weight:600;display:inline-flex}.open-to-work-dot{background:#22c55e;border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-top:0;animation:2s ease-in-out infinite pulse-dot}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.85)}}.eyebrow{color:var(--accent);text-transform:uppercase;letter-spacing:.14px;margin-bottom:1rem;font-size:.85rem;font-weight:700}.hero h1{color:var(--text);letter-spacing:-.06em;margin-bottom:1.5rem;font-size:clamp(2.8rem,6vw,5.8rem);line-height:.95;animation:1s ease-in slideIn;display:inline-block}.hero-description{color:var(--muted-text);max-width:620px;margin-bottom:.75rem;font-size:1.15rem;line-height:1.8}.hero-location{color:var(--muted-text);opacity:.85;margin-bottom:2rem;font-size:.9rem}.hero-buttons{flex-wrap:wrap;gap:1rem;display:flex}.primary-button{color:#fff;background-color:#111;border:1px solid #111}.secondary-button{color:#111;background-color:#0000;border:1px solid #111}.resume-button{background-color:var(--gold);color:#fff;border:1px solid var(--gold)}.secondary-button:hover,.primary-button:hover{color:#fff;box-shadow:var(--shadow-hover);background-color:#2a2a2a;transform:translateY(-2px)}.resume-button:hover{color:#fff;box-shadow:var(--shadow-hover);background-color:#b8953a;border-color:#b8953a;transform:translateY(-2px)}.hero-card-stack{flex-direction:column;gap:1.25rem;display:flex;position:relative}.mini-card{border:2px solid var(--border);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffc7;border-radius:28px;padding:1.5rem;transition:transform .2s,box-shadow .2s;transform:rotate(-1deg)}.mini-card:nth-child(2){margin-left:2rem;transform:rotate(1.5deg)}.mini-card:nth-child(3){margin-left:.75rem;transform:rotate(-.5deg)}.mini-card:hover{transform:translateY(-6px)rotate(0);box-shadow:0 20px 45px #0000001c}.mini-card span{text-transform:uppercase;letter-spacing:.12em;color:var(--accent);margin-bottom:.6rem;font-size:.75rem;font-weight:700;display:inline-block}.mini-card h3{color:var(--text);margin-bottom:.5rem;font-size:1.45rem}.mini-card p{color:var(--muted-text);line-height:1.6}.mini-card.featured{border:2px dashed var(--accent)}.about-bio{align-items:center;gap:2.5rem;margin-top:2rem;display:flex}.about-avatar{border:3px solid var(--pink-light);outline:3px solid var(--pink-light);outline-offset:4px;border-radius:50%;flex-shrink:0;width:170px;height:170px;overflow:hidden}.about-avatar-img{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.about-text{color:var(--text);flex:1;max-width:580px;font-size:1.05rem;line-height:1.8}.about-cards{grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-top:3rem;display:grid}.about-card{background:#fffcf7d9;border:1px solid #ded6cbe6;border-radius:32px;padding:1.5rem;transition:transform .2s,box-shadow .2s}.about-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-3px)}.about-card-icon{color:var(--pink);margin-bottom:.6rem;font-size:1.4rem}.about-card h3{color:var(--text);margin-bottom:.4rem;font-family:Inter,sans-serif;font-size:1rem;font-weight:600}.about-card p{color:var(--muted-text);font-size:.9rem;line-height:1.6}.section-intro{max-width:680px;color:var(--muted-text);margin-top:1rem;margin-bottom:2.5rem;line-height:1.7}.projects-section{padding:6rem 8%}.work-card{box-shadow:var(--shadow-soft);background:#fffcf7d9;border:1px solid #ded6cbe6;border-radius:32px;grid-template-columns:1fr .8fr;align-items:center;gap:2rem;margin-bottom:2rem;padding:2rem;transition:transform .2s,box-shadow .2s;display:grid;overflow:hidden}.work-card:hover{transform:translateY(-6px);box-shadow:0 20px 45px #0000001a}.work-card-header{align-items:center;gap:.75rem;margin-bottom:.8rem;display:flex}.work-label{text-transform:uppercase;letter-spacing:.14em;color:var(--accent);margin-bottom:0;font-size:.78rem;font-weight:800}.work-status{letter-spacing:.04em;border-radius:999px;padding:.2rem .65rem;font-size:.72rem;font-weight:600}.work-status--live{color:#15803d;background:#22c55e1f;border:1px solid #22c55e4d}.work-status--in.progress{color:#92600a;background:#c8a96a26;border:1px solid #c8a96a59}.work-status--concept{background:var(--accent-light);color:var(--muted-text);border:1px solid var(--border)}.work-card h3{letter-spacing:-.04em;color:var(--text);margin-bottom:1rem;font-size:clamp(2rem,4vw,3.2rem);line-height:1}.work-description{color:var(--muted-text);max-width:620px;font-size:1.02rem;line-height:1.7}.work-tags{flex-wrap:wrap;gap:.65rem;margin:1.5rem 0;display:flex}.work-tags span{background:var(--background-soft);border:1px solid var(--border);color:var(--text);border-radius:999px;padding:.45rem .75rem;font-size:.85rem;font-weight:600}.work-links{flex-wrap:wrap;gap:1.25rem;display:flex}.text-link{color:var(--accent);font-weight:800;text-decoration:none;position:relative}.text-link:after{content:"";background:var(--accent);transform-origin:0;width:100%;height:2px;transition:transform .2s;position:absolute;bottom:-4px;left:0;transform:scaleX(0)}.text-link:hover:after{transform:scaleX(1)}.work-preview{justify-content:center;display:flex}.preview-window{background:var(--background);border:1px solid var(--border);border-radius:26px;width:100%;max-width:360px;overflow:hidden;transform:rotate(2deg);box-shadow:0 16px 35px #00000014}.preview-bar{border-bottom:1px solid var(--border);background:#ffffffa6;gap:.35rem;padding:.85rem;display:flex}.preview-bar span{background:var(--accent-light);border-radius:50%;width:10px;height:10px}.preview-bar span:first-child{background:#ff5f57}.preview-bar span:nth-child(2){background:#ffbd2e}.preview-bar span:nth-child(3){background:#28c840}.preview-body{padding:.5rem}.preview-image-placeholder{background:linear-gradient(135deg, #e0eee42e, #aac4b829), var(--background-soft);border-radius:20px;height:170px;margin-bottom:1rem}.preview-image-image{object-fit:cover;object-position:center;border-radius:20px;width:100%;height:170px;margin-bottom:1rem;display:block}.preview-line{background:var(--border);border-radius:999px;width:65%;height:10px;margin-bottom:.65rem}.preview-line.long{width:88%}.preview-pill-row{gap:.5rem;margin-top:1rem;display:flex}.preview-pill-row span{background:var(--accent-light);border-radius:999px;width:64px;height:22px}.work-card.reverse .work-card-content{order:2}.work-card.reverse .work-preview{order:1}.skills-grid{grid-template-columns:repeat(2,1fr);gap:2rem;display:grid}.skill-group{box-shadow:var(--shadow-soft);background:#fffcf7d9;border:1px solid #ded6cbe6;border-radius:32px;padding:1.5rem}.skill-group h3{color:var(--muted-text);margin-bottom:1rem}.skills-list{flex-wrap:wrap;gap:.75rem;display:flex}.skills-list span{background:var(--accent-light);border:1px solid var(--accent-light);border-radius:999px;padding:.5rem .8rem;font-size:.9rem}.research-card{color:--text;box-shadow:var(--shadow-soft);background:#fffcf7d9;border:1px solid #ded6cbe6;border-radius:32px;padding:2rem}.research-card h2{margin-bottom:1rem}.research-card p{color:var(--muted-text)}.project-skills{flex-wrap:wrap;justify-content:space-evenly;margin-top:1rem;margin-bottom:1rem;display:flex}span{border:1px solid var(--accent);background-color:var(--accent-light);border-radius:15px;margin-top:1rem;padding:.5rem}.research-card .project-link{color:var(--pink-dark);font-weight:700}.contact{text-align:center;background:var(--background-soft);border-radius:40px;flex-direction:column;align-items:center;margin-bottom:3rem;padding:2rem;display:flex}.contact h2{display:inline-block}.contact .section-title:after,.contact .section-intro{margin-left:auto;margin-right:auto}.contact-links{flex-wrap:wrap;justify-content:center;gap:.85rem;margin-top:2rem;display:flex}.contact-btn{background:var(--accent);color:#fff;border-radius:999px;align-items:center;gap:.5rem;padding:.8rem 1.4rem;font-size:.95rem;font-weight:600;text-decoration:none;transition:transform .2s,box-shadow .2s,background .2s;display:inline-flex}.contact-btn:hover{box-shadow:var(--shadow-hover);background:#2a2a2a;transform:translateY(-2px)}.contact-btn--resume{background:var(--gold)}.contact-btn--resume:hover{background:#b8953a}.footer{text-align:center;border-top:1px solid var(--accent-light);color:var(--text);padding:2rem 1.5rem}@media (width<=850px){.hero{text-align:left;grid-template-columns:1fr;gap:3rem;padding:5rem 6%}.hero-card-stack{max-width:520px}.mini-card:nth-child(2),.mini-card:nth-child(3){margin-left:0}.work-card{grid-template-columns:1fr}.work-preview{justify-content:flex-start}.preview-window{max-width:100%;transform:rotate(0)}.about-bio{text-align:left;flex-direction:column}.about-cards{grid-template-columns:1fr}.puzzle-card:first-child,.puzzle-card:nth-child(2),.puzzle-card:nth-child(3){margin-left:0;margin-right:0}.puzzle-card:before,.puzzle-card:after{display:none}}@media (width<=600px){.hero{padding:4rem 5%}.hero h1{font-size:2.7rem}.hero-description{font-size:1rem}.hero-buttons{flex-direction:column;align-items:stretch}.btn{width:100%}.work-card{border-radius:26px;padding:1.4rem}.work-card h3{font-size:2rem}.work-links{flex-direction:column;gap:.85rem}.about-cards{grid-template-columns:1fr}}
