@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--bg:#090b0e;--panel:#101319;--text:#f0f1f5;--muted:#9a9eaa;--blue:#a9bdff;--line:#282c34;font-family:'DM Sans',sans-serif;color:var(--text);background:var(--bg);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}::selection{background:var(--blue);color:var(--bg)}:focus-visible{outline:2px solid var(--blue);outline-offset:6px}.skip{position:fixed;left:20px;top:-70px;z-index:100;background:var(--blue);color:#000;padding:15px}.skip:focus{top:15px}.progress{height:2px;position:fixed;top:0;left:0;background:var(--blue);width:0;z-index:40}header{height:96px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;border-bottom:1px solid var(--line);position:sticky;top:0;background:#090b0eea;backdrop-filter:blur(20px);z-index:30}.logo{font-family:Manrope,sans-serif;font-size:34px;font-weight:800;letter-spacing:-2px}.logo span{font-size:14px;vertical-align:top;letter-spacing:0;margin-left:4px}header nav{display:flex;gap:32px;font-size:14px;color:#c3c6ce}header a:hover{color:var(--blue)}.nav-contact{border-bottom:1px solid #606775;padding:10px 0;font-size:14px}.nav-contact span{margin-left:26px}.menu-toggle{display:none}.hero{padding:42px 5% 0;overflow:hidden;background:radial-gradient(ellipse at 82% 55%,#17223c55,transparent 45%)}.hero-top,.hero-footer{display:flex;justify-content:space-between}.eyebrow,.small-label{font-size:12px;letter-spacing:1.8px;font-weight:500}.subdued{color:var(--muted)}h1{font-family:Manrope,sans-serif;font-size:clamp(48px,7.5vw,124px);font-weight:500;letter-spacing:-.065em;line-height:1.12;margin:64px 0 32px}h1>span{display:block}h1 .outlined{color:var(--muted)}h1 i{font-style:normal;color:var(--blue)}.hero-middle{display:flex;justify-content:space-between;align-items:center;min-height:335px}.hero-intro{padding-bottom:50px}.small-label{color:var(--blue)}.hero-intro p{font-size:19px;line-height:1.6;color:#b8bdc9;margin:22px 0 30px}.button{display:inline-flex;gap:55px;align-items:center;background:var(--blue);color:#111725;padding:18px 22px;border-radius:3px;font-size:14px;font-weight:600;transition:background .2s,transform .2s}.button:hover{background:#c5d2ff;transform:translateY(-3px)}.button span{font-size:22px}.orbit{position:relative;width:380px;height:320px;perspective:700px;margin-right:9%}.orbit-ring{position:absolute;border:1px solid #93afffaa;border-radius:50%;inset:5px 35px;transform:rotateX(63deg) rotate(-25deg);box-shadow:0 0 40px #7199ff0d;animation:orbit 18s linear infinite}.r2{transform:rotateY(65deg) rotate(30deg);animation-direction:reverse;border-color:#7890c877}.r3{inset:50px 75px;transform:rotateX(40deg);animation-duration:24s}.orbit-center{position:absolute;inset:85px 0;text-align:center;font:800 88px Manrope;color:#dce5ff;letter-spacing:-8px}.orbit-center span{color:#719dff}.orbit-label{position:absolute;bottom:-5px;left:55px;font-size:12px;letter-spacing:2px;color:var(--muted)}.hero-footer{padding:26px 0;margin-top:36px;border-top:1px solid var(--line);font-size:12px;letter-spacing:1.5px;color:var(--muted)}@keyframes orbit{to{rotate:360deg}}.hero-title{animation:enter 1s ease-out both}.hero-intro{animation:enter 1s .15s ease-out both}@keyframes enter{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){header{height:76px;padding:0 6%}header nav,.nav-contact{display:none}.menu-toggle{display:block;background:none;border:1px solid var(--line);padding:9px 13px;font-size:14px}#mobile-menu:not([hidden]){position:fixed;top:76px;inset-inline:0;z-index:29;background:var(--panel);display:flex;flex-direction:column;padding:20px 6%;gap:20px;border-bottom:1px solid var(--line)}.hero{padding:30px 6% 0}.hero-top .subdued{display:none}h1{font-size:clamp(43px,9.8vw,74px);margin:48px 0 30px;line-height:1.18}.hero-middle{display:block}.hero-intro{padding-bottom:15px}.hero-intro p{font-size:17px}.orbit{width:280px;height:240px;margin:12px auto 38px}.orbit-center{font-size:64px;inset:70px 0}.orbit-label{left:14px;font-size:11px}.hero-footer{font-size:10px;margin-top:20px;gap:20px}.hero-footer>span:first-child{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal{opacity:1!important;transform:none!important}}
.section{padding:105px 5%;border-top:1px solid var(--line)}.section-label{font-size:12px;letter-spacing:1.6px;color:var(--muted);margin-bottom:30px}.about,.journey,.education{display:grid;grid-template-columns:25% 75%}h2{font:500 clamp(34px,3.8vw,60px)/1.2 Manrope,sans-serif;letter-spacing:-.045em;margin:0 0 40px}h2 em{font-style:normal;color:var(--muted)}.about-copy{display:grid;grid-template-columns:1fr 1fr;gap:50px}.about-copy p,.project-copy p,.timeline p{color:#aeb3c0;font-size:16px;line-height:1.8;margin:0 0 20px}.principles{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:26px;margin-top:25px;font-size:14px;color:var(--blue)}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:34px}.section-heading h2{margin-bottom:0}.section-heading p{font-size:16px;line-height:1.6;color:var(--muted)}.project{border:1px solid var(--line);border-radius:5px;overflow:hidden;background:var(--panel);transition:border-color .3s,transform .3s}.project:hover{border-color:#60739d;transform:translateY(-4px)}.featured{display:grid;grid-template-columns:1.15fr 1fr;margin-bottom:28px}.project-visual{min-height:330px;padding:28px;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between}.flow-visual{background:radial-gradient(ellipse at center,#203963,#101b30 75%);color:#b4cbff}.visual-tag,.visual-foot{font-size:11px;letter-spacing:1.5px}.flow-diagram{max-width:365px;width:100%;margin:32px auto}.flow-diagram>div:not(.flow-main){font-size:11px;letter-spacing:1px;border-bottom:1px solid #6e8cb544;padding:14px 0;display:flex;justify-content:space-between;gap:16px}.flow-main{padding:26px 0;display:flex;align-items:center;gap:24px}.flow-main>span{font:700 64px Manrope;letter-spacing:-5px}.flow-main small{font-size:18px}.blue{color:#82aaff}.project-copy{padding:38px}.project-number{font-size:11px;letter-spacing:1.5px;color:var(--muted)}h3{font:500 26px/1.3 Manrope;letter-spacing:-.04em;margin:18px 0}.tags{display:flex;gap:8px;flex-wrap:wrap}.tags span{font-size:12px;border:1px solid #353b48;padding:7px 10px;border-radius:3px;color:#c1c6d2}.project-copy details{margin-top:30px;border-top:1px solid var(--line)}summary{cursor:pointer;display:flex;justify-content:space-between;list-style:none;padding:19px 0 0;font-size:14px}summary::-webkit-details-marker{display:none}summary span{color:var(--blue);font-size:19px}details[open] summary span{transform:rotate(45deg)}details p{padding-top:22px}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.solar-visual{background:#18241f;color:#b3d3b5}.system-diagram{margin:35px 0;display:flex;flex-direction:column;gap:22px}.system-diagram>span{font-size:11px;letter-spacing:1.8px}.system-diagram b{font:500 47px/1.13 Manrope;letter-spacing:-2px}.system-diagram em{font-style:normal;color:#779b7e}.party-visual{background:#292032;color:#d9c3ef}.product-wordmark{font:600 57px Manrope;letter-spacing:-3px;margin:50px 0}.product-wordmark span{display:block;font:400 14px 'DM Sans';letter-spacing:0;margin-top:14px;color:#baa6ce}.skill-row{display:grid;grid-template-columns:7% 30% 1fr;align-items:center;border-top:1px solid var(--line);padding:27px 0;gap:15px}.skill-index{font-size:12px;color:var(--muted)}.skill-row h3{margin:0;font-size:23px}.skill-row .tags span{border:none;background:#161a22;font-size:14px;padding:9px 12px}.timeline{border-left:1px solid #424958;padding-left:32px}.timeline article{position:relative;padding:0 0 34px}.timeline article:last-child{padding-bottom:0}.timeline article:before{content:'';position:absolute;left:-37px;top:3px;width:9px;height:9px;background:var(--blue);border-radius:50%;box-shadow:0 0 0 6px var(--bg)}.timeline-type,.education-date{font-size:12px;letter-spacing:1px;color:var(--muted)}.timeline h3{margin-top:10px}.education{background:#101319}.education-row{display:grid;grid-template-columns:150px 1fr 30px;gap:15px;border-top:1px solid var(--line);padding:30px 0}.education-row h3{margin:0 0 12px;font-size:22px}.education-row p{font-size:16px;color:var(--muted);margin:0 0 9px;line-height:1.5}.education-row div>span{color:var(--muted);font-size:14px;line-height:1.6}.education-symbol{font-size:27px;color:var(--blue)}.contact{padding:90px 5% 0;background:radial-gradient(ellipse at 10% 90%,#26365866,transparent 65%)}.contact h2{font-size:clamp(42px,6vw,92px);max-width:1100px}.contact h2 em{color:var(--blue)}.contact-bottom{display:flex;justify-content:space-between;align-items:center;margin-bottom:85px;gap:30px}.contact-bottom p{color:var(--muted);line-height:1.6;font-size:18px}.contact-pending{color:var(--muted);font-size:14px;padding:18px 0;border-bottom:1px solid var(--line)}footer{border-top:1px solid var(--line);padding:30px 0;display:flex;align-items:center;justify-content:space-between}footer>span,footer>a:last-child{font-size:12px;letter-spacing:1px;color:var(--muted)}.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s,transform .8s}.reveal.visible{opacity:1;transform:none}
@media(min-width:1600px){main{max-width:1800px;margin:auto}}@media(max-width:1000px){.about,.journey,.education{grid-template-columns:1fr}.about-copy{gap:25px}.featured{grid-template-columns:1fr 1fr}.project-copy{padding:26px}.skill-row{grid-template-columns:5% 30% 1fr}.education-row{grid-template-columns:140px 1fr 30px}}@media(max-width:760px){.section{padding:65px 6%}.section-heading{display:block}.section-heading p{margin-top:23px}.about-copy,.featured,.project-grid{grid-template-columns:1fr}.principles{flex-direction:column;gap:16px}.project-visual{min-height:290px}.project-copy{padding:27px}.project-copy h3{font-size:26px}.skill-row{grid-template-columns:28px 1fr;gap:15px}.skill-row .tags{grid-column:2}.skill-row h3{font-size:22px}.skill-row .tags span{font-size:13px}.education-row{grid-template-columns:1fr 25px}.education-date{grid-column:1/-1}.education-row h3{font-size:22px}.contact{padding:65px 6% 0}.contact-bottom{display:block;margin-bottom:60px}.contact-pending{margin-top:30px}.contact h2{font-size:clamp(39px,9vw,68px)}footer{flex-wrap:wrap;gap:25px}footer .logo{width:100%}footer>span,footer>a:last-child{font-size:10px}.project-grid{gap:24px}h2{margin-bottom:30px}}
.email-link{font-size:clamp(14px,1.5vw,20px);gap:30px}@media(max-width:400px){.email-link{gap:12px;padding:16px 14px}}
