.past-projects h2 em{color:#ff4fa3;font-style:normal}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px 18px}.web-project{display:block}.web-project-image{background:#eee8eb;aspect-ratio:16/10;overflow:hidden;position:relative;border:1px solid #e0d9dd}.web-project-image img{width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .45s ease,filter .45s ease}.web-project-image span{position:absolute;right:12px;bottom:12px;background:#ff4fa3;color:#080808;padding:9px 12px;font-size:11px;font-weight:700;transform:translateY(55px);transition:transform .3s ease}.web-project:hover img{transform:scale(1.035);filter:brightness(.72)}.web-project:hover .web-project-image span{transform:none}.web-project h3{font-size:20px;margin-top:17px}.web-project p{font-size:13px;color:#756e72;margin:5px 0}.archive-note{text-align:center;color:#756e72;font-size:13px;margin:55px 0 0}.certifications{background:#fffdfd}.cert-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.cert-card{background:#f3eef1;border:1px solid #e1d9dd;padding:clamp(28px,4vw,55px);min-height:430px;display:flex;flex-direction:column;position:relative}.cert-card.dark{background:#080808;color:white;border-color:#080808}.cert-number{position:absolute;right:28px;top:26px;font:700 11px "Space Grotesk";color:#8f858a}.cert-mark{width:74px;height:74px;border-radius:50%;background:#ff4fa3;display:grid;place-items:center;font:700 19px "Space Grotesk";margin-bottom:42px;color:#080808}.cert-card>p{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#7a7276}.cert-card h3{font-size:clamp(25px,3vw,39px);max-width:500px;letter-spacing:-.035em}.cert-focus{display:flex;gap:7px;flex-wrap:wrap;margin:24px 0}.cert-focus span{font-size:10px;text-transform:uppercase;letter-spacing:.05em;border:1px solid #d0c7cc;padding:6px 9px;border-radius:20px}.dark .cert-focus span{border-color:#443b40;color:#bbb3b7}.cert-card>a{margin-top:auto;color:#ff4fa3;font-size:13px;font-weight:700}.dark>a{color:#ffc4e1}@media(max-width:900px){.project-grid{grid-template-columns:1fr 1fr}.cert-grid{grid-template-columns:1fr}}@media(max-width:620px){.project-grid{grid-template-columns:1fr}.cert-card{min-height:390px}}

.simple-skills-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:55px}.simple-skills-heading p{max-width:430px;color:#6e676b;margin:0}.simple-skills{border-top:1px solid #d8d1d5}.skill-category{display:grid;grid-template-columns:minmax(210px,.7fr) 2fr;gap:40px;padding:30px 0;border-bottom:1px solid #d8d1d5}.skill-category h3{font-size:20px}.skill-list{display:flex;flex-wrap:wrap;gap:9px}.skill-list span{background:#f3eef1;border:1px solid #e2dade;padding:8px 13px;font-size:13px;border-radius:3px}.skill-list span:hover{border-color:#ff4fa3}@media(max-width:900px){.simple-skills-heading{display:block}.simple-skills-heading p{margin-top:20px}.skill-category{grid-template-columns:1fr;gap:18px}}@media(max-width:620px){.skill-list{gap:7px}.skill-list span{font-size:12px;padding:7px 10px}}

.role-details{margin:0;padding-left:19px;color:#5f595c}.role-details li{padding-left:5px;margin-bottom:10px}.role-details li:last-child{margin-bottom:0}.role-details li::marker{color:#ff4fa3}@media(max-width:900px){.role-details{grid-column:2}}@media(max-width:620px){.role-details{grid-column:auto}}

.about-identity h2{margin-bottom:38px}.profile-frame{max-width:390px;position:relative;background:#080808;padding:8px 8px 0}.profile-frame img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 28%;filter:grayscale(12%)}.profile-frame span{display:block;color:#fff;font-size:11px;text-transform:uppercase;letter-spacing:.1em;padding:12px 8px}.profile-frame:after{content:"";position:absolute;width:46px;height:46px;right:-13px;top:-13px;background:#ff4fa3;z-index:-1}@media(max-width:900px){.profile-frame{max-width:340px;margin-bottom:8px}}

.education{margin-top:42px;border-top:1px solid #dedadd}.education-title{display:flex;justify-content:space-between;padding:17px 0 10px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:#827a7e}.education article{display:flex;justify-content:space-between;gap:20px;padding:19px 0;border-top:1px solid #e8e2e5}.education article>strong{font:600 13px "Space Grotesk";color:#ff4fa3;white-space:nowrap}.education-year{display:block;color:#8b8387;font-size:11px;margin-bottom:7px}.education h3{font-size:17px;line-height:1.25}.education p{margin:6px 0 0;color:#756e72;font-size:13px}.language-list span{display:flex;gap:7px;align-items:center}.language-list strong{font-weight:700;color:#171417}.intro.section{padding-top:clamp(75px,8vw,120px);padding-bottom:clamp(75px,8vw,120px)}@media(min-width:901px){.intro-grid{align-items:start;gap:7vw}.about-identity h2{font-size:clamp(44px,4.8vw,70px)}.profile-frame{max-width:350px}.intro-body{padding-top:4px}}@media(max-width:620px){.education article{display:block}.education article>strong{display:block;margin-top:10px}}

.degree-type{display:inline-block;background:#080808;color:#fff;padding:4px 7px;margin-bottom:8px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.education-specialization{color:#ff4fa3!important;font-weight:700}

.research-journey{display:grid;grid-template-columns:1fr minmax(130px,.45fr) 1fr;align-items:center;margin-bottom:24px}.journey-step{display:flex;align-items:center;gap:15px;border:1px solid #d5cdd1;background:#fffdfd;padding:17px 20px}.journey-step>span{width:31px;height:31px;display:grid;place-items:center;border-radius:50%;background:#080808;color:#fff;font-size:10px}.journey-step.active>span{background:#ff4fa3;color:#080808}.journey-step p{margin:0;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#847c80}.journey-step strong{display:block;color:#171417;font-size:13px;text-transform:none;letter-spacing:0}.journey-line{height:1px;background:#bbb2b7;position:relative;text-align:center}.journey-line span{position:relative;top:-13px;background:#f5f1f3;padding:0 10px;font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:#81797d}.thesis-card{background:#fffdfd;border:1px solid #d5cdd1;padding:clamp(28px,4vw,54px);margin-bottom:18px}.thesis-label{font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:#ff4fa3;font-weight:700;margin-bottom:35px}.thesis-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw}.thesis-grid h3{font-size:clamp(30px,4vw,53px);letter-spacing:-.04em;line-height:1.06}.thesis-supervisor{color:#746c70;font-size:13px;margin-top:20px}.thesis-grid>div:last-child>p{color:#5f595c;margin-top:0}.thesis-grid strong{color:#171417}.research-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:25px}.research-tags span{font-size:9px;text-transform:uppercase;letter-spacing:.05em;border:1px solid #d6cdd2;padding:6px 8px;border-radius:20px}@media(max-width:700px){.research-journey{grid-template-columns:1fr}.journey-line{height:35px;width:1px;margin:auto}.journey-line span{display:none}.thesis-grid{grid-template-columns:1fr;gap:30px}}

.research-role{border-left:3px solid #ff4fa3;padding:4px 0 4px 15px;margin-top:28px}.research-role>span{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:#81797d}.research-role>strong{display:block;font:600 16px "Space Grotesk";margin:3px 0}.research-role>p{font-size:12px;color:#756e72;margin:0;max-width:280px}

.project-label{font-size:10px!important;text-transform:uppercase;letter-spacing:.13em;color:#ff4fa3!important;font-weight:700}.product-features>div{padding:16px 0}.product-features p{font-size:13px}.product-features strong{font-size:15px}.project-tech{display:flex;justify-content:space-between;gap:30px;margin-top:55px;padding-top:20px;border-top:1px solid rgba(255,255,255,.14)}.project-tech>span{color:#ff4fa3;font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:700}.project-tech p{margin:0;text-align:right;color:#aaa4a7;font-size:12px}@media(max-width:620px){.project-tech{display:block}.project-tech p{text-align:left;margin-top:10px;line-height:1.9}}

.web-project.archived .web-project-image span{transform:none;background:#080808;color:#fff}.web-project.archived .web-project-image img{filter:grayscale(35%)}.web-project.archived:hover img{transform:none;filter:grayscale(35%)}

body{overflow-x:hidden}main,section,.intro-grid,.project-title,.project-details,.thesis-grid,.role>*{min-width:0}h1,h2,h3,p,li{overflow-wrap:break-word}@media(max-width:1180px){.menu-button{display:flex;flex-direction:column;gap:5px;padding:10px;z-index:22;cursor:pointer}.menu-button span:not(.sr-only){width:23px;height:2px;background:white;display:block;transition:transform .2s,opacity .2s}.menu-button[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-button[aria-expanded="true"] span:nth-child(2){opacity:0}.menu-button[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}#site-nav{position:fixed;inset:0;background:#080808;display:none;flex-direction:column;justify-content:center;align-items:center;gap:20px;z-index:21}#site-nav.open{display:flex}#site-nav a{font-size:20px}.nav-cta{margin-top:8px}}@media(max-width:900px){.hero{min-height:auto;padding-bottom:100px}.intro-grid{gap:45px}.about-identity{display:grid;grid-template-columns:1fr minmax(230px,340px);align-items:end;gap:30px}.about-identity h2{margin-bottom:0}.profile-frame{margin-bottom:0}.project-details{gap:50px}.thesis-grid{gap:35px}}@media(max-width:620px){.about-identity{display:block}.about-identity h2{margin-bottom:30px}.profile-frame{max-width:100%}.section-heading{margin-bottom:38px}.quick-facts{gap:10px}.web-project-image span{transform:none}.paper-meta{gap:20px}.paper-meta span:last-child{text-align:right}.contact h2{font-size:clamp(47px,15vw,68px)}.email{overflow-wrap:anywhere}.contact-bottom div{flex-wrap:wrap}.role-details{padding-left:17px}}@media(max-width:390px){.hero h1{font-size:45px}.actions .button{width:100%;justify-content:center}.section{padding-left:18px;padding-right:18px}.skill-list span{max-width:100%}}

.reading-progress{position:fixed;inset:0 0 auto;height:3px;background:#ff4fa3;transform:scaleX(0);transform-origin:left center;will-change:transform;z-index:100}

.back-to-top{position:fixed;right:clamp(16px,3vw,36px);bottom:clamp(16px,3vw,36px);width:48px;height:48px;border:1px solid #ff4fa3;border-radius:50%;background:#080808;color:#ff4fa3;font:500 22px "Space Grotesk";display:grid;place-items:center;z-index:90;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(18px) scale(.85);transition:opacity .25s ease,visibility .25s ease,transform .25s ease,background .2s ease,color .2s ease,box-shadow .2s ease}.back-to-top.visible{opacity:1;visibility:visible;transform:none}.back-to-top:hover,.back-to-top:focus-visible{background:#ff4fa3;color:#080808;box-shadow:0 8px 28px rgba(255,79,163,.3);transform:translateY(-3px)}.back-to-top span{transition:transform .2s ease}.back-to-top:hover span{transform:translateY(-2px)}@media(max-width:620px){.back-to-top{width:44px;height:44px}}@media(prefers-reduced-motion:reduce){.back-to-top,.back-to-top span{transition:none}}
