:root{color:#28233e;font-synthesis:none;--muted:#625d74;--accent:#6541d9;--line:#dcd5eb;background:#f8f5ff;font-family:DM Sans,sans-serif;font-weight:400}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:7px}button{border:0}::selection{background:var(--accent);color:#101313}.container{max-width:1200px;margin:auto;padding-left:40px;padding-right:40px}.reading-progress{background:var(--accent);transform-origin:0;z-index:50;height:2px;position:fixed;top:0;left:0;right:0}.header{z-index:20;border-bottom:1px solid var(--line);align-items:center;gap:35px;max-width:1280px;height:86px;margin:auto;padding:0 40px;display:flex;position:relative}.brand{letter-spacing:-3px;font-family:Manrope,sans-serif;font-size:34px;font-weight:800}.brand span{color:var(--accent)}.nav{color:var(--muted);gap:33px;margin-left:auto;font-size:13px;display:flex}.nav a:hover{color:var(--accent)}.contact-nav{border:1px solid #48554e;border-radius:6px;align-items:center;gap:15px;padding:10px 16px;font-size:13px;display:flex}.menu-button{display:none}.hero{isolation:isolate;grid-template-columns:1.25fr 1fr;align-items:center;gap:55px;padding-top:91px;padding-bottom:0;display:grid;position:relative}.hero-grid{z-index:-1;background-image:linear-gradient(#b8efce06 1px,#0000 1px),linear-gradient(90deg,#b8efce06 1px,#0000 1px);background-size:48px 48px;position:absolute;inset:0 0 50px 35%;-webkit-mask-image:radial-gradient(#000,#0000 72%);mask-image:radial-gradient(#000,#0000 72%)}.eyebrow{letter-spacing:1.8px;color:var(--accent);align-items:center;gap:10px;font-size:10px;font-weight:600;display:flex}.live-dot{background:var(--accent);border-radius:50%;flex-shrink:0;width:6px;height:6px;display:inline-block;box-shadow:0 0 0 4px #b8efce0c}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{font-family:Manrope,sans-serif}h1{letter-spacing:-6px;margin:28px 0;font-size:clamp(65px,7.7vw,106px);line-height:1.05}h1>span:not(.title-dot),.title-dot{color:var(--accent)}.hero-role{letter-spacing:-.5px;margin-bottom:16px;font-size:20px}.hero-actions{align-items:center;gap:22px;margin-top:29px;display:flex}.button{border-radius:5px;align-items:center;gap:22px;padding:16px 22px;font-size:13px;font-weight:600;transition:transform .25s,background .25s;display:inline-flex}.button:hover{background:#d1ffdf;transform:translateY(-3px)}.primary{background:var(--accent);color:#16281d}.social{color:var(--muted);transition:color .2s}.social:hover{color:var(--accent)}.portrait-wrap{justify-self:end;width:100%;max-width:375px;margin-right:10px;position:relative}.portrait-frame{background:#28392e;border:1px solid #64766b;border-radius:110px 110px 14px 14px;height:425px;position:relative;overflow:hidden;transform:rotate(3deg)}.portrait-frame img{object-fit:cover;object-position:50% 40%;filter:saturate(.65);width:100%;height:100%}.portrait-overlay{background:linear-gradient(#0000 65%,#101a13d9);position:absolute;inset:0}.photo-index{letter-spacing:1.5px;color:#d0dbd3;font-size:9px;position:absolute;bottom:22px;left:24px}.portrait-label{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#202723ed;border:1px solid #48574b;border-radius:8px;align-items:center;gap:16px;padding:17px 20px;font-size:12px;line-height:1.7;display:flex;position:absolute;bottom:45px;left:-45px;transform:rotate(-4deg);box-shadow:0 12px 40px #0004}.portrait-label strong{color:var(--muted);font-weight:500}.portrait-label svg{color:var(--accent);margin-left:8px}.portrait-note{color:var(--accent);font-size:16px;font-style:italic;position:absolute;top:-26px;right:-15px;transform:rotate(10deg)}.hero-bottom{border-bottom:1px solid var(--line);letter-spacing:1.1px;color:var(--muted);grid-column:1/-1;justify-content:space-between;margin-top:16px;padding:35px 0 29px;font-size:9px;display:flex}.hero-bottom span,.hero-bottom a{align-items:center;gap:8px;display:flex}.section-label{letter-spacing:1.8px;color:var(--muted);justify-content:space-between;align-items:center;font-size:9px;display:flex}.section-label>span:first-child{color:var(--accent)}.education-grid{grid-template-columns:1fr 1.5fr;align-items:center;gap:80px;margin-top:55px;display:grid}.school-copy h2{letter-spacing:-1.8px;margin:19px 0;font-size:40px;line-height:1.2}.school-copy>p:not(.eyebrow){color:var(--muted);max-width:520px;font-size:14px;line-height:1.85}.school-values{gap:24px;margin-top:24px;font-size:11px;display:flex}.school-values span{align-items:center;gap:9px;display:flex}.school-values svg{color:var(--accent)}.projects>.section-label{border-top:1px solid var(--line)}.projects-heading{justify-content:space-between;align-items:end;margin:30px 0 56px;display:flex}.projects-heading h2{letter-spacing:-2.8px;margin:0;font-size:55px;line-height:1.1}.projects-heading p{color:var(--muted);margin-bottom:4px;font-size:13px;line-height:1.8}.project-row{border-bottom:1px solid var(--line);grid-template-columns:.85fr 1.35fr;align-items:center;gap:64px;padding:54px 0 75px;display:grid}.project-row.reverse{grid-template-columns:1.35fr .85fr}.reverse .project-copy{grid-area:1/2}.reverse .video-stage{grid-area:1/1}.project-category{letter-spacing:1.25px;color:var(--muted);align-items:center;gap:10px;margin-bottom:23px;font-size:8px;display:flex}.project-category>span{width:25px;height:25px;color:var(--accent);letter-spacing:0;border:1px solid #435048;border-radius:50%;place-items:center;display:grid}.project-copy h3{letter-spacing:-1.3px;align-items:center;gap:18px;margin-bottom:22px;font-size:33px;display:flex}.project-copy h4{white-space:pre-line;letter-spacing:-.4px;margin-bottom:14px;font-size:19px;font-weight:500;line-height:1.5}.project-copy p{color:var(--muted);font-size:13px;line-height:1.9}.tags{flex-wrap:wrap;gap:7px;margin:23px 0;display:flex}.tags span{color:#cad5ce;border:1px solid #364039;border-radius:4px;padding:6px 10px;font-size:9px}.source-link{border-bottom:1px solid #607265;align-items:center;gap:25px;padding:4px 0 8px;font-size:12px;display:inline-flex}.source-link:hover{color:var(--accent)}.video-stage{isolation:isolate;background:#1c3029;border-radius:9px;min-width:0;padding:44px 25px 33px;position:relative;overflow:hidden}.stage-grid{z-index:-1;background-image:linear-gradient(#ffffff06 1px,#0000 1px),linear-gradient(90deg,#ffffff06 1px,#0000 1px);background-size:28px 28px;position:absolute;inset:0}.mac-window{background:#111;border:1px solid #78857b66;border-radius:8px;overflow:hidden;transform:rotate(-2deg);box-shadow:0 20px 38px #0007}.violet .mac-window{transform:rotate(2deg)}.window-bar{color:#d3d7d5;background:linear-gradient(#303434,#252929);justify-content:space-between;align-items:center;height:32px;font-size:10px;display:flex;position:relative}.window-bar>span:nth-child(2){position:absolute;left:50%;transform:translate(-50%)}.traffic{gap:5px;padding-left:12px;display:flex}.traffic i{background:#ff6058;border-radius:50%;width:7px;height:7px}.traffic i:nth-child(2){background:#febc2e}.traffic i:nth-child(3){background:#29c840}.window-detail{color:#8a9390;margin-right:12px}.video-body{aspect-ratio:16/10;background:#090b0a;position:relative}.video-body video{object-fit:contain;width:100%;height:100%;display:block}.video-controls{color:#b7c0bb;background:#202424;justify-content:space-between;align-items:center;padding:4px 10px;font-size:8px;display:flex}.video-controls>span{align-items:center;gap:6px;display:flex}.video-controls button{background:0 0;border-radius:3px;place-items:center;width:30px;height:26px;display:grid}.stage-caption{text-align:center;letter-spacing:2px;color:#c0ccc5;margin-top:26px;font-size:8px;display:block}.video-error{text-align:center;background:#101313;place-content:center;padding:20px;font-size:13px;display:grid;position:absolute;inset:0}.video-error a{text-decoration:underline}.more-work{color:var(--muted);justify-content:space-between;align-items:center;gap:20px;padding:28px 0;font-size:12px;display:flex}.more-work a{color:var(--accent);align-items:center;gap:12px;display:flex}.contact>.section-label{margin-bottom:40px}.contact p{color:var(--muted);margin:38px 0 16px;font-size:14px}.contact h2{letter-spacing:-3px;margin-bottom:30px;font-size:64px;line-height:1.15}.contact h2 span{color:var(--accent)}.contact-github{color:var(--muted);align-items:center;gap:10px;margin-left:28px;font-size:12px;display:inline-flex}footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:25px;padding-top:28px;padding-bottom:28px;font-size:10px;display:flex}footer>a:last-child{align-items:center;gap:12px;display:flex}.skip{z-index:100;background:var(--accent);color:#101313;padding:15px;position:fixed;top:-80px;left:20px}.skip:focus{top:10px}@media (width>=1500px){.hero{padding-top:110px}.portrait-frame{height:455px}.hero-bottom{margin-top:35px}}@media (width<=900px){.container{padding-left:28px;padding-right:28px}.hero{gap:25px}.eyebrow{letter-spacing:1px;font-size:8px}h1{font-size:75px}.portrait-frame{height:360px}.portrait-label{padding:12px;font-size:10px;left:-15px}.hero-bottom{font-size:8px}.education-grid{gap:35px}.project-row,.project-row.reverse{gap:30px}.project-copy h3{font-size:28px}.video-stage{padding:35px 16px 24px}.projects-heading h2{font-size:47px}.school-values{gap:14px;font-size:9px}.contact h2{font-size:54px}}@media (width<=640px){html{scroll-padding-top:25px}.container{padding-left:23px;padding-right:23px}.header{gap:17px;height:74px;padding:0 23px}.brand{font-size:30px}.contact-nav{margin-left:auto;padding:9px 12px;font-size:11px}.menu-button{background:0 0;place-items:center;padding:7px;display:grid}.nav{display:none}.nav.open{background:#202723;border:1px solid #435048;border-radius:8px;flex-direction:column;gap:0;padding:10px;display:flex;position:absolute;top:65px;left:15px;right:15px;box-shadow:0 20px 30px #0008}.nav a{padding:15px}.hero{grid-template-columns:1fr;gap:40px;padding-top:44px}.hero-content{z-index:2;position:relative}.eyebrow{letter-spacing:1.1px;font-size:8px}h1{letter-spacing:-4px;margin:22px 0;font-size:76px}.hero-role{font-size:18px}.hero-description{font-size:14px}.hero-actions{gap:22px}.portrait-wrap{justify-self:center;width:80%;max-width:320px;margin:15px 0 0}.portrait-frame{border-radius:85px 85px 12px 12px;height:345px}.portrait-label{bottom:38px;left:-23px}.hero-bottom{gap:15px;margin:0;padding-top:10px}.hero-bottom>a{display:none}.hero-bottom span{font-size:8px}.education{padding-top:60px;padding-bottom:65px}.section-label{letter-spacing:1px;gap:20px;font-size:8px}.section-label>span:last-child:not(.live-dot){display:none}.education-grid{grid-template-columns:1fr;gap:50px;margin-top:42px}.school-copy h2{font-size:36px}.school-copy>p:not(.eyebrow){font-size:13px}.school-values{gap:20px;font-size:10px}.projects{padding-top:5px}.projects-heading{margin-bottom:5px;display:block}.projects-heading h2{font-size:44px}.projects-heading p{margin-top:22px}.project-row,.project-row.reverse{grid-template-columns:1fr;gap:30px;padding:42px 0}.reverse .project-copy,.reverse .video-stage{grid-area:auto}.project-copy h3{margin-bottom:17px;font-size:31px}.project-copy h4{font-size:18px}.project-category{margin-bottom:15px}.video-stage{padding:30px 17px 23px}.more-work{flex-direction:column;align-items:start;gap:15px;font-size:11px}.contact{padding-top:55px;padding-bottom:60px}.contact h2{letter-spacing:-2px;font-size:43px}.contact-github{margin:25px 0 0;display:flex}.contact p{font-size:12px}footer{flex-wrap:wrap;gap:15px}footer>span{font-size:8px}footer>a:last-child{margin-left:auto;font-size:9px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.mac-window,.portrait-frame,.portrait-label{transform:none}}body{background:linear-gradient(#faf6ff 0%,#f8f7ff 26%,#f3fbff 54%,#fff8f1 78%,#fff6eb 100%)}main{isolation:isolate;position:relative;overflow:hidden}.color-landscape{pointer-events:none;z-index:-2;position:absolute;inset:0;overflow:hidden}.color-landscape span{filter:blur(65px);opacity:.65;border-radius:50%;position:absolute}.color-landscape span:first-child{background:#dbc8ff;width:650px;height:650px;animation:4s ease-out both color-drift;top:-180px;right:-200px}.color-landscape span:nth-child(2){background:#b6f1ec;width:450px;height:550px;animation:4s ease-out reverse both color-drift;top:650px;left:-250px}.color-landscape span:nth-child(3){background:#ffd5bb;width:550px;height:700px;top:1700px;right:-300px}.header{border-bottom:0;height:90px}.brand{color:#392662}.contact-nav{color:#5337ab;background:#fff9;border-color:#b6a1e6;border-radius:30px}.nav{color:#524768;font-weight:600}.hero{gap:45px;padding-top:65px}.hero-grid{z-index:-1;background-image:radial-gradient(#8f76bc36 1px,#0000 1px);background-size:25px 25px;inset:0 0 40px;-webkit-mask-image:linear-gradient(90deg,#0000,#000);mask-image:linear-gradient(90deg,#0000,#000)}.eyebrow{letter-spacing:1.1px;font-size:11px}.live-dot{background:#7c4fe3;box-shadow:0 0 0 4px #7c4fe310}h1{letter-spacing:-6px;font-size:clamp(65px,7.7vw,106px);line-height:1.02}h1>span:not(.title-dot){color:#0000;background:linear-gradient(100deg,#6b42d9,#b34fac);-webkit-background-clip:text;background-clip:text;padding-right:.08em;display:inline-block}.title-dot{letter-spacing:0;color:#ee8a58;margin-left:.02em;display:inline-block}.hero-role{color:#493760;font-size:21px;font-weight:600}.hero-description{color:#625773;max-width:440px;font-size:16px;line-height:1.75}.hero-description strong{color:#5936b0;font-weight:700}.skills-inline{gap:9px;margin:22px 0;display:flex}.skills-inline span{color:#583995;background:#e7dafa;border-radius:25px;padding:7px 14px;font-size:12px;font-weight:600;transform:rotate(-3deg)}.skills-inline span:nth-child(2){color:#23615b;background:#d0eee7;transform:rotate(3deg)}.skills-inline span:nth-child(3){color:#8b4b16;background:#ffe1bc;transform:rotate(-4deg)}.hero-actions{margin-top:25px}.button{border-radius:30px;font-size:14px;transition:transform .2s,box-shadow .2s,background .2s;box-shadow:0 5px #45249e}.primary{color:#fff;background:#7048dc}.button:hover{background:#5f35cd;transform:translateY(-4px);box-shadow:0 9px #45249e}.social{color:#604b7b}.portrait-wrap{max-width:375px}.portrait-frame{background:#e2d3fe;border:8px solid #fff;border-radius:125px 125px 35px 35px;height:425px;transform:rotate(4deg);box-shadow:14px 16px #c8b3f3}.portrait-frame img{filter:none}.portrait-overlay{background:linear-gradient(#0000 78%,#231b488c)}.photo-index{color:#fff;font-size:8px}.portrait-label{color:#533b11;background:#ffdf88;border:2px solid #fff;border-radius:17px;animation:1.2s .3s both label-arrive;bottom:25px;left:-35px;box-shadow:0 9px 25px #6b426e20}.portrait-label strong{color:#68562f}.portrait-label svg{color:#7a5620}.portrait-note{color:#7f45bb;font-size:20px;font-weight:700;top:-36px;right:-5px}.hero-spark{color:#f69b57;z-index:-1;font-size:78px;animation:2s ease-out both spark-in;position:absolute;top:35px;right:37%}.hero-bottom{border-bottom:0;margin-top:3px;padding-top:15px}.hero-bottom a{color:#604490}.education{padding-top:65px;padding-bottom:60px}.education>div{background:#ffffffad;border:1px solid #fff;border-radius:32px;padding:35px 40px 40px;box-shadow:0 15px 60px #8263aa0a}.education-grid{grid-template-columns:.85fr 1.5fr;gap:50px;margin-top:30px}.school-copy h2{margin-top:12px;font-size:40px}.school-copy>p:not(.eyebrow){font-size:15px;line-height:1.75}.school-values{color:#594570;flex-wrap:wrap}.school-values span{background:#eee7fb;border-radius:15px;padding:8px 12px}.section-label{letter-spacing:1px;font-size:10px}.projects{padding-top:10px}.projects-heading{gap:35px;margin:23px 0 5px}.projects-heading h2{letter-spacing:-2px;max-width:540px;font-size:48px}.projects-heading h2 span{color:#7951c8}.projects-heading p{min-width:205px;font-size:13px}.project-row{border:0;gap:48px;padding:55px 0}.project-copy h3{color:#4b3486;margin-bottom:12px;font-size:39px}.project-copy h4{color:#665279;margin-bottom:15px;font-size:18px}.project-copy p{font-size:15px;line-height:1.75}.project-category{color:#695b81;letter-spacing:.6px;margin-bottom:18px;font-size:9px}.project-category>span{color:#603ba3;background:#e8ddfa;border:0;width:29px;height:29px;font-weight:700}.tags span{color:#654c80;background:#fff8;border:1px solid #d9cbe8;border-radius:15px;padding:6px 12px;font-size:11px}.source-link{color:#613ab4;border-color:#b197de;font-size:13px}.video-stage{background:linear-gradient(135deg,#b9eedf,#b8e1ef);border-radius:30px;padding:42px 25px 25px;transition:transform .35s;box-shadow:0 18px 45px #64998816}.violet{background:linear-gradient(135deg,#e5cdfc,#c9bef5)}.peach{background:linear-gradient(135deg,#ffe0a7,#ffc9b6)}.stage-grid{background-image:radial-gradient(#ffffffb0 1.2px,#0000 1.2px);background-size:20px 20px}.mac-window{border:1px solid #fffc;border-radius:10px;box-shadow:0 15px 25px #3a375140}.window-bar{color:#554e64;background:linear-gradient(#fff,#f0edf4);height:35px;font-weight:600}.window-detail{color:#8c849c}.video-controls{color:#62596f;background:#f3f0f8}.video-controls button{color:#625080}.video-controls button:hover{background:#ded4ef}.stage-caption{color:#615371;letter-spacing:1px;margin-top:23px;font-size:9px}.video-error{color:#fff}.more-work{border-top:1px solid #ddd0e6;font-size:13px}.contact{padding-top:45px;padding-bottom:65px}.contact>div{background:linear-gradient(115deg,#ecdcff,#fbe5ef 60%,#ffe6bf);border:1px solid #fff;border-radius:32px;padding:36px 42px 43px;position:relative;overflow:hidden}.contact>div:after{content:"✳";color:#c496ed55;pointer-events:none;font-size:220px;position:absolute;top:40px;right:45px}.contact h2{z-index:1;margin:10px 0 28px;font-size:62px;position:relative}.contact p{margin:30px 0 12px}.contact-github{color:#61487d;z-index:1;position:relative}.contact .button{z-index:1;position:relative}footer{color:#715e7c;border-color:#e0cfdf}.skip{color:#fff}.nav.open{background:#fff7ff;border-color:#d7c5ee;box-shadow:0 15px 35px #5b38742b}@keyframes color-drift{0%{transform:translate(-70px,60px)scale(.8)}to{transform:translate(0)scale(1)}}@keyframes spark-in{0%{opacity:0;transform:rotate(-140deg)scale(.2)}to{opacity:1;transform:rotate(12deg)scale(1)}}@keyframes label-arrive{0%{opacity:0;transform:translateY(25px)rotate(8deg)}to{opacity:1;transform:translateY(0)rotate(-4deg)}}@media (width<=900px){.hero{gap:25px}.hero-spark{font-size:60px;right:38%}.portrait-frame{height:365px}.education>div{padding:28px}.education-grid,.project-row{gap:30px}.projects-heading h2{font-size:40px}.project-copy h3{font-size:33px}.project-copy p{font-size:14px}.contact h2{font-size:53px}}@media (width<=640px){.header{height:74px}.hero{gap:32px;padding-top:38px}h1{letter-spacing:-4px;font-size:76px}.hero-role{font-size:19px}.hero-description{font-size:15px}.hero-spark{font-size:44px;top:17px;right:20px}.hero-actions{gap:19px}.hero .button{padding:15px 18px;font-size:13px}.portrait-wrap{width:78%;max-width:300px;margin-top:26px}.portrait-frame{border-radius:95px 95px 28px 28px;height:325px;box-shadow:10px 10px #c8b3f3}.portrait-label{bottom:18px;left:-25px}.portrait-note{font-size:18px}.hero-bottom{padding-top:14px}.education{padding-top:35px;padding-bottom:45px}.education>div{border-radius:25px;padding:25px 20px}.education-grid{grid-template-columns:1fr;gap:45px;margin-top:45px}.school-copy h2{font-size:31px}.school-copy>p:not(.eyebrow){font-size:14px}.school-values{gap:8px;font-size:10px}.projects-heading h2{font-size:38px}.projects-heading p{margin-top:17px}.project-row{gap:24px;padding:35px 0 40px}.project-copy h3{font-size:34px}.project-copy h4{font-size:17px}.video-stage{border-radius:22px;padding:30px 16px 22px}.contact{padding-top:30px;padding-bottom:40px}.contact>div{border-radius:23px;padding:27px 22px 32px}.contact h2{font-size:41px}.contact>div:after{font-size:140px;top:35px;right:-15px}.contact p{font-size:12px}.contact .button{padding:14px 17px;font-size:12px}.contact-github{font-size:11px}.more-work{font-size:12px}footer>span{font-size:8px}}@media (prefers-reduced-motion:reduce){.color-landscape span,.hero-spark,.portrait-label{animation:none}.portrait-frame,.portrait-label{transform:none}}.portrait-wrap:before{content:"";z-index:5;background:radial-gradient(circle at 35% 30%,#fff 0 12%,#f1a34f 14% 40%,#b9672f 43% 100%);border-radius:50%;width:15px;height:15px;animation:3.8s ease-in-out infinite pin-bounce;position:absolute;top:-18px;left:50%;transform:translate(-50%);box-shadow:0 3px 5px #55316b45}.portrait-wrap:after{content:"";z-index:4;transform-origin:top;background:#bd8a64;width:2px;height:24px;animation:3.8s ease-in-out infinite thread-sway;position:absolute;top:-5px;left:50%;transform:translate(-50%);box-shadow:0 0 0 1px #fff5}.portrait-frame{transform-origin:50% -13px;animation:3.8s ease-in-out infinite portrait-swing}.portrait-label{animation:1.2s .3s both label-arrive,4.5s ease-in-out 1.5s infinite label-float}.video-stage{animation:6s ease-in-out infinite stage-float}.project-row:nth-of-type(2) .video-stage{animation-delay:-1.5s}.project-row:nth-of-type(3) .video-stage{animation-delay:-3s}.project-row:nth-of-type(4) .video-stage{animation-delay:-4.5s}@keyframes portrait-swing{0%,to{transform:rotate(2deg)}50%{transform:rotate(6deg)}}@keyframes thread-sway{0%,to{transform:translate(-50%)rotate(-2deg)}50%{transform:translate(-50%)rotate(4deg)}}@keyframes pin-bounce{0%,to{transform:translate(-50%)scale(1)}50%{transform:translate(-50%)scale(1.08)}}@keyframes label-float{0%,to{translate:0}50%{translate:0 -4px}}@keyframes stage-float{0%,to{translate:0}50%{translate:0 -6px}}@media (prefers-reduced-motion:reduce){.portrait-wrap:before,.portrait-wrap:after,.portrait-frame,.portrait-label,.video-stage{animation:none}.portrait-frame,.portrait-label{transform:none}}.school-photo{min-width:0}.school-photo img{border-radius:18px;width:100%;height:auto;display:block}.education-grid{grid-template-columns:1.1fr 1.2fr;gap:36px}.school-copy h2{margin-top:12px}.school-copy .school-values{gap:10px}@media (width<=640px){.education-grid{grid-template-columns:1fr;gap:24px;margin-top:25px}.school-photo img{border-radius:12px}}.video-controls{justify-content:flex-end}.certifications{padding-top:35px;padding-bottom:40px}.certificate-card{background:linear-gradient(125deg,#fff3dd,#fffaf1 65%,#f3eaff);border:1px solid #fff;border-radius:28px;grid-template-columns:.75fr 1.25fr;align-items:center;gap:55px;margin-top:25px;padding:35px 45px;display:grid}.certificate-preview{justify-self:center;max-width:275px;transition:transform .25s;display:block;box-shadow:0 12px 35px #704d2120}.certificate-preview:hover{transform:translateY(-5px)}.certificate-preview img{width:100%;height:auto;display:block}.certificate-copy h2{letter-spacing:-1px;margin-bottom:18px;font-size:35px}.certificate-copy>p:not(.eyebrow){color:var(--muted);max-width:470px;font-size:15px;line-height:1.75}.certificate-copy .certificate-date{font-size:12px}.certificate-actions{flex-wrap:wrap;align-items:center;gap:24px;margin-top:25px;display:flex}.certificate-actions .button{font-size:12px}.certificate-actions .source-link{gap:10px;font-size:12px}@media (width<=900px){.header{gap:20px}.nav{gap:19px}.certificate-card{gap:30px;padding:30px}.certificate-copy h2{font-size:29px}}@media (width<=640px){.certificate-card{grid-template-columns:1fr;gap:30px;padding:25px 22px}.certificate-preview{max-width:225px}.certificate-copy h2{font-size:29px}.certificate-copy>p:not(.eyebrow){font-size:14px}.certificate-actions{gap:23px}.certifications{padding-top:20px;padding-bottom:20px}}.language-switch{background:#eee6fa;border:1px solid #dbcef1;border-radius:24px;flex-shrink:0;align-items:center;gap:2px;padding:3px;display:flex}.language-switch button{color:#65537c;background:0 0;border-radius:20px;min-width:33px;min-height:30px;padding:6px 8px;font-size:11px;font-weight:700;transition:background .2s,color .2s}.language-switch button[aria-pressed=true]{color:#fff;background:#7048dc}.language-switch button:hover{color:#49306f;background:#dfd0f6}.language-switch button[aria-pressed=true]:hover{background:#6038c5}.header{gap:22px}.hero-bottom{min-height:50px}.skills-inline{flex-wrap:wrap}@media (width>=641px) and (width<=950px){.header{gap:13px;padding-left:25px;padding-right:25px}.nav{gap:14px;font-size:12px}.contact-nav{gap:8px;padding:9px 11px}.language-switch button{min-width:29px;padding:6px}}@media (width<=640px){.header{gap:10px}.language-switch button{min-width:29px;min-height:30px;padding:5px;font-size:10px}.contact-nav{gap:6px;padding:8px 10px}.header .menu-button{padding:4px}.hero-bottom{min-height:0}}.parallax-orbit{z-index:-1;pointer-events:none;opacity:.75;border:1px solid #9d78df55;border-radius:50%;width:210px;height:210px;position:fixed;top:15vh;right:7vw;box-shadow:0 0 0 24px #d8c5f51f,0 0 0 48px #c9f0e81b}.parallax-orbit:before,.parallax-orbit:after{content:"";border:1px dashed #efaa8555;border-radius:50%;position:absolute;inset:19px}.parallax-orbit:after{border-style:solid;border-color:#71cfc088;inset:75px}.parallax-orbit span{background:#f1a054;border-radius:50%;width:11px;height:11px;position:absolute;box-shadow:0 0 15px #f1a054aa}.parallax-orbit span:first-child{top:16px;left:46%}.parallax-orbit span:nth-child(2){background:#7150d7;bottom:32%;right:18px}.parallax-orbit span:nth-child(3){background:#55bfb5;bottom:28%;left:17px}.parallax-orbit{animation:5s ease-in-out infinite orbit-breathe}.portrait-wrap{will-change:transform;animation:linear both wrap-parallax;animation-timeline:scroll(root);animation-range:0 900px}@keyframes wrap-parallax{0%{translate:0}to{translate:0 -70px}}@keyframes orbit-breathe{0%,to{opacity:.62;scale:1}50%{opacity:.9;scale:1.06}}@media (width<=640px){.parallax-orbit{opacity:.55;width:120px;height:120px;top:18vh;right:-42px}.parallax-orbit:before{inset:12px}.parallax-orbit:after{inset:42px}.parallax-orbit span{width:7px;height:7px}.portrait-wrap{animation-range:0 650px}}@media (prefers-reduced-motion:reduce){.parallax-orbit,.portrait-wrap{animation:none;translate:none}.parallax-orbit{display:none}}.project-copy{will-change:translate;animation:linear both copy-scroll;animation-timeline:view();animation-range:entry exit}.video-stage{will-change:translate,rotate;animation:6s ease-in-out infinite stage-float,linear both stage-scroll;animation-timeline:auto,view();animation-range:normal,entry exit}.school-photo{will-change:translate,rotate;animation:linear both photo-scroll;animation-timeline:view();animation-range:entry exit}@keyframes copy-scroll{0%{translate:0 38px}to{translate:0 -22px}}@keyframes stage-scroll{0%{rotate:-2deg}to{rotate:2deg}}@keyframes photo-scroll{0%{translate:-25px 25px;rotate:-2deg}to{translate:20px -12px;rotate:2deg}}@media (prefers-reduced-motion:reduce){.project-copy,.video-stage,.school-photo{animation:none;translate:none;rotate:none}}.skills-inline span{transition:transform .25s,box-shadow .25s;display:inline-block}.skills-inline span:hover{transform:translateY(-7px)rotate(-3deg);box-shadow:0 10px 16px #6d4fc52b}.skills-inline span:nth-child(2):hover{transform:translateY(-7px)rotate(3deg);box-shadow:0 10px 16px #3d9f912b}.skills-inline span:nth-child(3):hover{transform:translateY(-7px)rotate(-4deg);box-shadow:0 10px 16px #d17a3d2b}.legal{padding-top:20px;padding-bottom:55px}.legal h1{letter-spacing:-.8px;margin-bottom:28px;font-size:28px}.legal-grid{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:28px 45px;padding-top:28px;display:grid}.legal h2{margin-bottom:12px;font-size:16px}.legal p{color:var(--muted);overflow-wrap:anywhere;margin-bottom:12px;font-size:13px;line-height:1.8}.legal a{color:var(--accent);text-underline-offset:3px;text-decoration:underline}footer{flex-wrap:wrap;gap:20px}@media (width<=640px){.legal-grid{grid-template-columns:1fr;gap:22px}.legal h1{font-size:25px}.legal{padding-bottom:35px}}.legal-page{flex-direction:column;min-height:100vh;display:flex}.legal-page main{flex:1;padding-top:40px}.legal-page .header{width:100%}.legal-page .language-switch{margin-left:auto}.legal-page .legal h1{letter-spacing:-1.5px;margin:28px 0 36px;font-size:clamp(32px,6vw,52px);line-height:1.15}.legal-page .legal h2{letter-spacing:normal}.legal-back{color:var(--accent);align-items:center;gap:8px;font-size:13px;display:inline-flex}.legal-page footer{width:100%}
