@import"https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800;900&family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap";:root{font-family:Manrope,Arial,sans-serif;color:#f1edf5;background:#09080d;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--bg:#09080d;--panel:#100f15;--line:#ffffff20;--text:#f1edf5;--muted:#a29daa;--red:#ff356f;--blue:#7187ff;--pink:#d97bff;--mono:"DM Mono",monospace;--display:"Barlow Condensed",Impact,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:76px}body{margin:0;min-width:320px}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}.portfolio{overflow:hidden;position:relative;background:var(--bg)}.film-grain{position:fixed;z-index:25;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.023;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E")}.nav-shell{position:fixed;z-index:40;top:0;left:0;right:0;height:76px;padding:0 6.3%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid transparent;transition:background .25s,border-color .25s}.nav-solid{background:#09080ded;border-color:#ffffff1c;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.logo-lockup{display:flex;align-items:center;gap:9px;font:8px/1.2 var(--mono);letter-spacing:.14em}.logo-lockup>b,.logo-lockup span:last-child{color:#e5e1e9}.logo-lockup span:last-child b{color:#9d97a4;font-weight:400}.logo-mark{font:800 23px var(--display);letter-spacing:-.06em}.logo-mark span{color:var(--red)}.primary-nav{height:100%;display:flex;align-items:center;gap:22px}.primary-nav a{height:100%;display:flex;align-items:center;gap:6px;position:relative;font:9px var(--mono);color:#aaa5b1;transition:color .2s}.primary-nav a sup{font:7px var(--mono);color:#686370}.primary-nav a:hover,.primary-nav a.active{color:#fff}.primary-nav a.active sup{color:var(--red)}.primary-nav a.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--red);box-shadow:0 -4px 13px #ff356f77}.resume-nav{display:flex;align-items:center;gap:8px;border:1px solid #ffffff35;padding:10px 13px;font:8px var(--mono);letter-spacing:.11em;transition:border-color .2s,color .2s}.resume-nav svg{color:var(--red)}.resume-nav:hover{border-color:var(--red);color:#ff83a5}.nav-menu,.mobile-nav{display:none}.hero-scene{height:min(850px,100svh);min-height:690px;position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;padding:102px 10.3% 58px}.hero-grid{position:absolute;z-index:-3;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(#ffffff08 1px,transparent 1px),linear-gradient(90deg,#ffffff08 1px,transparent 1px);background-size:62px 62px;-webkit-mask-image:linear-gradient(90deg,#000,transparent 97%);mask-image:linear-gradient(90deg,#000,transparent 97%)}.hero-light{position:absolute;z-index:-2;width:600px;height:600px;right:9%;top:50%;transform:translateY(-50%);border-radius:50%;filter:blur(20px);pointer-events:none}.hero-light-red{background:radial-gradient(circle,#ff1e692c,#40114220 40%,transparent 70%)}.hero-light-blue{right:0;top:55%;background:radial-gradient(circle,#3155aa2b,transparent 68%)}.web-mark{position:absolute;z-index:-1;width:min(52vw,650px);height:min(52vw,650px);right:2%;top:48%;transform:translateY(-50%) rotate(-8deg);stroke:#ff5c8755;stroke-width:1.15;filter:drop-shadow(0 0 12px #ff2d6b2d);animation:web-float 32s linear infinite;pointer-events:none}@keyframes web-float{to{transform:translateY(-50%) rotate(352deg)}}.hero-caption{position:absolute;top:100px;left:10.3%;display:flex;align-items:center;gap:10px;font:8px var(--mono);letter-spacing:.13em;color:#c8c2cf}.live-dot{width:6px;height:6px;border-radius:50%;background:#8ee0b2;box-shadow:0 0 9px #8ee0b2}.caption-sep{color:var(--red)}.hero-copy{position:relative;z-index:4;width:69%;max-width:840px}.hero-pretitle,.eyebrow{font:8px var(--mono);letter-spacing:.17em;color:#ff7898}.hero-pretitle{display:flex;align-items:center;gap:11px;margin-bottom:30px}.hero-pretitle i{font-style:normal;color:#7d89ff;font-size:14px}.hero-title{display:flex;flex-direction:column;margin:0;font:900 clamp(87px,12.3vw,164px)/.74 var(--display);letter-spacing:-.035em}.hero-title>span:first-child{color:#f5f1f7}.hero-title em{font-style:normal;margin-left:9%;color:transparent;-webkit-text-stroke:1px #f1edf5}.hero-title-last{font-size:.63em;white-space:nowrap;margin:15px 0 0 2%;color:#ebe7ef}.hero-title-last b{color:var(--red);font-weight:800;text-shadow:3px 0 #384fb4,-2px 0 #71284d}.hero-subcopy{display:flex;align-items:flex-start;gap:13px;max-width:465px;margin:34px 0 0 1%}.subcopy-rule{width:27px;flex:none;height:1px;background:var(--red);margin-top:9px;box-shadow:0 0 10px var(--red)}.hero-subcopy p{margin:0;font-size:11px;line-height:1.9;color:#aaa5b1}.hero-subcopy strong{color:#fff}.hero-buttons{display:flex;align-items:center;gap:23px;margin:24px 0 0 1%}.button-primary,.button-quiet{display:inline-flex;align-items:center;gap:12px;font:8px var(--mono);letter-spacing:.12em}.button-primary{padding:13px 15px;background:var(--red);color:#fff;clip-path:polygon(0 0,95% 0,100% 19%,100% 100%,5% 100%,0 80%);transition:transform .2s,filter .2s}.button-primary:hover{transform:translateY(-2px);filter:brightness(1.14)}.button-quiet{color:#c9c3cf;border-bottom:1px solid #ffffff36;padding:0 0 8px}.button-quiet svg{color:var(--blue)}.hero-figure{position:absolute;z-index:2;right:6%;bottom:0;width:min(39vw,450px);height:79%;pointer-events:none;filter:drop-shadow(15px 5px 30px #ff226d20)}.figure-backlight{position:absolute;top:4%;right:-16%;bottom:-5%;left:-16%;background:radial-gradient(ellipse,#ec25673d 0%,#6f2a791a 35%,transparent 70%);filter:blur(17px)}.figure-head{position:absolute;z-index:2;top:7%;left:37%;width:34%;height:28%;border-radius:45% 45% 39% 40%;background:linear-gradient(118deg,#27232f,#0b0a0e 72%);transform:rotate(7deg);box-shadow:inset 10px 0 20px #ff2d7028}.figure-head:before,.figure-head:after{content:"";position:absolute;top:42%;width:43%;height:9%;background:#ff467c;filter:drop-shadow(0 0 7px #ff477f)}.figure-head:before{left:4%;clip-path:polygon(0 23%,100% 0,100% 100%)}.figure-head:after{right:4%;background:#728bff;clip-path:polygon(0 0,100% 23%,0 100%);filter:drop-shadow(0 0 7px #728bff)}.figure-head i,.figure-head b{position:absolute;top:0;left:50%;height:100%;width:1px;background:#ffffff0b;transform:rotate(28deg)}.figure-body{position:absolute;z-index:1;top:31%;left:7%;width:91%;height:75%;background:linear-gradient(100deg,#211c29,#100e15 47%,#09080d 78%);clip-path:polygon(30% 0,69% 0,78% 8%,100% 27%,84% 44%,80% 100%,7% 100%,18% 43%,0 28%,18% 8%)}.figure-body:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(115deg,transparent 30%,#ff396b19 31%,transparent 32%,transparent 53%,#7187ff14 54%,transparent 55%)}.figure-shoulder{position:absolute;z-index:3;left:16%;top:37%;width:32%;height:17%;border-top:1px solid #ff4b804a;transform:rotate(31deg)}.figure-crosshair{position:absolute;right:4%;top:28%;font-size:20px;color:#ff6792;text-shadow:0 0 12px #ff3b78;animation:cross-spin 8s linear infinite}@keyframes cross-spin{to{transform:rotate(360deg)}}.hero-vertical{position:absolute;right:3.6%;top:42%;writing-mode:vertical-rl;font:7px var(--mono);letter-spacing:.14em;color:#898391}.hero-vertical span{color:var(--red);padding:5px 0}.hero-index{position:absolute;bottom:35px;left:6.4%;font:8px var(--mono);color:#77717f}.hero-index b{color:var(--red)}.scroll-cue{position:absolute;bottom:22px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:9px;font:7px var(--mono);letter-spacing:.13em;color:#85808c}.scroll-cue i{display:grid;place-items:center;width:26px;height:26px;border:1px solid #ffffff31;border-radius:50%;color:var(--red);font-style:normal;animation:cue 2s ease-in-out infinite}@keyframes cue{50%{transform:translateY(4px);border-color:#ff356f}}.comic-slash{position:absolute;z-index:3;right:0;bottom:0;width:30%;height:6px;background:linear-gradient(90deg,transparent,var(--red),var(--blue));clip-path:polygon(8% 0,100% 0,100% 100%,0 100%)}.panel-section{position:relative;padding:78px 10.3% 82px;overflow:hidden}.section-meta{height:28px;display:flex;align-items:flex-start;justify-content:space-between;border-bottom:1px solid #ffffff23;font:7px var(--mono);letter-spacing:.13em;color:#aaa4b0}.section-meta i{font-style:normal;color:var(--red);padding:0 5px}.section-meta span:last-child{color:#716c79}.origin-section{background:#0d0c12;border-top:1px solid #ffffff19}.origin-layout{display:grid;grid-template-columns:1fr 1.05fr;gap:9%;padding:50px 0 56px;position:relative}.origin-title{position:relative}.origin-title h2,.education-intro h2,.skills-heading h2,.projects-intro h2,.experience-intro h2,.contact-content h2{font:700 clamp(53px,6.5vw,84px)/.82 var(--display);letter-spacing:-.015em;margin:19px 0}.origin-title h2 em,.education-intro h2 em,.skills-heading h2 em,.projects-intro h2 em,.experience-intro h2 em,.contact-content h2 em{font-style:normal;color:var(--red)}.origin-scribble{position:absolute;right:13%;bottom:0;color:#697dff;font-size:47px;transform:rotate(-14deg)}.large-copy{font:600 24px/1.18 var(--display);max-width:500px;margin:0 0 17px}.large-copy em{font-style:normal;color:#d88dff}.origin-story>p:not(.large-copy){font-size:10px;line-height:1.95;color:#a9a4b0;max-width:510px}.origin-signature{display:flex;flex-direction:column;border-left:1px solid var(--red);padding-left:13px;margin-top:23px}.origin-signature span{font:italic 18px var(--display);color:#eee9f3}.origin-signature small{font:7px var(--mono);letter-spacing:.12em;color:#898390;margin-top:5px}.origin-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #ffffff1c;padding-top:14px;font:7px var(--mono);letter-spacing:.1em;color:#76717e}.origin-bottom span:last-child{display:flex;align-items:center;gap:8px}.origin-bottom svg{color:var(--red)}.education-section{background:#09080d}.education-intro,.skills-heading,.projects-intro,.experience-intro{display:flex;align-items:flex-end;justify-content:space-between;margin:42px 0 31px}.education-intro h2,.skills-heading h2,.projects-intro h2,.experience-intro h2{margin-bottom:0}.edu-stamp{width:103px;height:103px;border:1px solid #ff356f68;border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:7px;transform:rotate(-9deg);color:var(--red)}.edu-stamp svg{width:21px;height:21px}.edu-stamp span{text-align:center;font:6px/1.5 var(--mono);letter-spacing:.1em;color:#b7b0bd}.education-panel{min-height:200px;position:relative;display:grid;grid-template-columns:120px 1fr 145px;gap:25px;align-items:center;padding:32px 34px;border:1px solid #ffffff23;background:linear-gradient(110deg,#15131a,#100f15 68%,#17101a);overflow:hidden}.education-panel:after{content:"SRM";position:absolute;right:14%;top:-15px;font:900 140px var(--display);color:#ffffff05;pointer-events:none}.edu-year{font:10px var(--mono);color:#a9a3b0}.edu-year span{color:var(--red);padding:0 5px}.edu-details,.edu-gpa{position:relative;z-index:1}.edu-details>span,.edu-gpa>span,.edu-gpa small{font:7px var(--mono);letter-spacing:.12em;color:#99939f}.edu-details h3{font:600 28px/1.06 var(--display);margin:13px 0 5px}.edu-details p{font-size:10px;color:#c49bdb;margin:0}.edu-gpa{justify-self:end;display:flex;flex-direction:column;align-items:flex-end;border-right:1px solid var(--red);padding-right:14px}.edu-gpa b{font:800 47px/.95 var(--display);color:var(--red);margin:6px 0}.skills-section{background:#0d0c12}.skills-heading p,.projects-intro>p,.experience-intro>p{max-width:260px;font-size:9px;line-height:1.85;color:#99949f;margin:0 0 4px 25px}.skills-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:11px}.skill-panel{position:relative;grid-column:span 2;min-height:184px;padding:17px;border:1px solid #ffffff1d;background:#121117;overflow:hidden;transition:transform .25s,border-color .25s}.skill-panel:hover{transform:translateY(-3px);border-color:#ff356f77}.skill-panel:nth-child(4),.skill-panel:nth-child(5){grid-column:span 3;min-height:165px}.skill-panel-top{display:flex;align-items:center;gap:8px;font:7px var(--mono);letter-spacing:.11em;color:#ff6d91}.skill-panel-top span:nth-child(2){color:#807a87}.skill-panel-top svg{margin-left:auto;color:#9a94a1}.skill-panel h3{position:relative;z-index:1;font:600 23px var(--display);margin:18px 0 12px}.skill-tags{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:6px}.skill-tags span,.project-tech span{border:1px solid #ffffff20;padding:6px 8px;color:#c9c3ce;font:7px var(--mono);background:#ffffff04}.skill-panel-art{position:absolute;right:7px;bottom:-22px;color:#ffffff08;font:800 75px var(--display);pointer-events:none}.projects-section{background:#09080d}.projects-intro>p{margin-left:25px}.project-filter{display:flex;flex-wrap:wrap;gap:6px;padding:15px 0 22px}.project-filter button{border:1px solid #ffffff25;background:transparent;padding:8px 11px;color:#aaa5b1;font:7px var(--mono);cursor:pointer;transition:all .2s}.project-filter button:hover,.project-filter button.active{background:#ff356f13;border-color:#ff356f88;color:#fff}.project-filter sup{color:var(--red);margin-left:6px}.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.project-card{border:1px solid #ffffff22;background:#111016;overflow:hidden;transition:border-color .25s,transform .25s}.project-card:hover{border-color:#ffffff4c;transform:translateY(-3px)}.project-art{height:220px;position:relative;overflow:hidden;background:linear-gradient(135deg,#2a1020,#13121b 72%)}.project-blue .project-art{background:linear-gradient(135deg,#112047,#11121a 72%)}.project-orange .project-art{background:linear-gradient(135deg,#352312,#121117 72%)}.project-red .project-art{background:linear-gradient(135deg,#321217,#141116 72%)}.project-art:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(28deg,transparent 47%,#ffffff12 48%,transparent 49%),linear-gradient(155deg,transparent 49%,#ffffff12 50%,transparent 51%);background-size:75px 75px;opacity:.55}.project-halftone{position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(#fff .6px,transparent .75px);background-size:5px 5px;opacity:.12;-webkit-mask-image:linear-gradient(100deg,transparent 25%,#000);mask-image:linear-gradient(100deg,transparent 25%,#000)}.project-art-top{position:absolute;z-index:2;inset:15px 16px auto;display:flex;justify-content:space-between;font:7px var(--mono);letter-spacing:.11em;color:#d0c8d5}.project-art-top span:last-child{color:#f58aaa}.project-orbit{position:absolute;top:50%;left:50%;width:174px;height:174px;transform:translate(-50%,-50%) rotate(-27deg) scaleY(.65);border:1px solid #ff4c807d;border-radius:50%;display:grid;place-items:center;box-shadow:0 0 44px #ff356f1a}.project-orbit:before,.project-orbit:after{content:"";position:absolute;top:14px;right:-12px;bottom:14px;left:-12px;border:1px solid #7585ff74;border-radius:50%;transform:rotate(56deg)}.project-orbit:after{top:33px;right:6px;bottom:33px;left:6px;border-color:#e278ff65;transform:rotate(-59deg)}.project-orbit i{position:absolute;top:10%;left:14%;width:7px;height:7px;background:#ff7094;border-radius:50%;box-shadow:0 0 14px #ff477f}.project-orbit b{transform:rotate(27deg) scaleY(1.54);color:#fff}.project-orbit b svg{width:26px;height:26px;stroke-width:1.2;filter:drop-shadow(2px 0 var(--red))}.project-art-label{position:absolute;bottom:15px;left:17px;font:6px var(--mono);letter-spacing:.13em;color:#a9a3b1}.project-art-label i{font-style:normal;color:var(--red)}.project-content{padding:17px 18px 14px}.project-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.project-title-row h3{font:600 24px/1.02 var(--display);margin:0}.project-title-row>span{font:8px var(--mono);color:var(--red)}.project-content>p{min-height:65px;font-size:9px;line-height:1.75;color:#aaa5b1;margin:11px 0 13px}.project-tech{display:flex;gap:5px;flex-wrap:wrap}.project-tech span{font-size:6px;padding:5px 6px}.project-links{display:flex;gap:16px;flex-wrap:wrap;border-top:1px solid #ffffff1a;margin-top:14px;padding-top:12px}.project-links a{display:flex;align-items:center;gap:6px;font:7px var(--mono);letter-spacing:.07em;color:#ded9e3}.project-links a svg:first-child{color:var(--red)}.project-links a svg:last-child{color:#918b98}.project-links a:hover{color:#ff8ba8}.project-endnote{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:28px;font:7px var(--mono);letter-spacing:.12em;color:#79737f}.project-endnote i{width:38px;height:1px;background:var(--red)}.experience-section{background:#0d0c12}.experience-intro{margin-bottom:38px}.experience-timeline{position:relative}.experience-timeline:before{content:"";position:absolute;left:15px;top:15px;bottom:30px;width:1px;background:linear-gradient(var(--red),#6f78e855,transparent)}.experience-row{display:grid;grid-template-columns:32px 125px 1fr;gap:15px;align-items:start;margin-bottom:14px}.timeline-index{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:9px}.timeline-index span{font:8px var(--mono);color:var(--red);background:#0d0c12;padding:4px 0}.timeline-index i{width:7px;height:7px;border-radius:50%;background:var(--red);box-shadow:0 0 12px var(--red)}.timeline-date{font:8px var(--mono);color:#aaa5b1;padding-top:20px}.experience-card{padding:19px 22px;border:1px solid #ffffff20;background:#111016}.experience-company{display:flex;align-items:center;gap:7px;font:8px var(--mono);color:#d3ced8}.experience-company svg{color:var(--red)}.experience-company span{margin-left:auto;color:#85808b;font-size:7px}.experience-card h3{font:600 26px var(--display);margin:13px 0 8px}.experience-card>p{max-width:760px;margin:0 0 13px;color:#aaa5b1;font-size:9px;line-height:1.8}.recognition-section{background:#09080d}.recognition-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:16px;margin-top:37px}.publication-card{min-height:420px;position:relative;overflow:hidden;padding:25px 26px;border:1px solid #ffffff24;background:linear-gradient(145deg,#18121d,#100f15 68%)}.publication-icon{width:39px;height:39px;display:grid;place-items:center;border:1px solid #ff356f68;color:var(--red);margin:28px 0 17px}.publication-icon svg{width:19px}.publication-card h2{position:relative;z-index:1;max-width:550px;font:600 clamp(26px,3vw,38px)/1.05 var(--display);margin:0}.publication-card>p{font:8px/1.8 var(--mono);color:#d297ea}.publication-card>p i{font-style:normal;color:#77717f}.publication-detail{display:block;max-width:430px;font-size:9px;line-height:1.8;color:#aaa5b1;margin:12px 0 18px}.publication-card>a{position:relative;z-index:2;display:inline-flex;align-items:center;gap:11px;padding:9px 10px;border:1px solid #ffffff2b;font:7px var(--mono);letter-spacing:.1em}.publication-card>a svg{color:var(--red)}.publication-bg{position:absolute;right:-8px;bottom:-38px;color:#ffffff06;font:900 130px var(--display);pointer-events:none}.recognition-column{display:flex;flex-direction:column;gap:24px}.achievement-list,.cert-list{margin-top:11px}.achievement-card{display:grid;grid-template-columns:20px 17px 1fr;align-items:start;gap:10px;padding:13px 0;border-top:1px solid #ffffff1d}.achievement-card>span,.cert-row>span{font:7px var(--mono);color:var(--red);padding-top:2px}.achievement-card svg{width:15px;height:15px;color:#cfb6ff}.achievement-card p{font-size:8px;line-height:1.65;color:#c9c3cf;margin:0}.cert-row{min-height:39px;display:grid;grid-template-columns:20px 1fr 14px;align-items:center;gap:9px;border-top:1px solid #ffffff1d}.cert-row b{font-size:8px;font-weight:500;color:#d1ccd6}.cert-row svg{color:#8b8592;width:13px}.contact-section{min-height:575px;position:relative;background:radial-gradient(ellipse at 82% 50%,#30102782,transparent 49%),#0d0c12;border-top:1px solid #ffffff20;padding-bottom:70px}.contact-section>.web-mark{right:-7%;top:57%;width:min(49vw,620px);opacity:.35;stroke:#8d67ff55}.contact-content{position:relative;z-index:2;max-width:670px;padding-top:42px}.contact-content h2{font-size:clamp(64px,8vw,100px);margin:21px 0}.contact-content>p{max-width:410px;color:#aaa5b1;font-size:10px;line-height:1.9}.contact-email{display:inline-flex;align-items:center;gap:12px;padding:0 0 10px;border-bottom:1px solid #ff356f81;font:500 clamp(17px,2.2vw,24px) var(--display);margin-top:10px}.contact-email svg:first-child,.contact-email svg:last-child{color:var(--red);width:16px}.contact-buttons{display:flex;align-items:center;gap:10px;margin-top:22px}.contact-buttons button,.contact-buttons a{min-height:35px;display:inline-flex;align-items:center;gap:8px;padding:0 11px;background:transparent;border:1px solid #ffffff2b;color:#d0cad5;font:7px var(--mono);letter-spacing:.08em;cursor:pointer;transition:border-color .2s,color .2s}.contact-buttons button:hover,.contact-buttons a:hover{border-color:#ff356f;color:#fff}.contact-buttons svg{color:var(--red);width:14px}.contact-orbit{position:absolute;left:700px;top:96px;width:240px;height:240px;border:1px solid #ff3d7755;border-radius:50%;transform:rotate(-28deg) scaleY(.62)}.contact-orbit div{position:absolute;top:18px;right:-8px;bottom:18px;left:-8px;border:1px solid #7287ff55;border-radius:50%;transform:rotate(55deg)}.contact-orbit div:nth-child(2){top:40px;right:12px;bottom:40px;left:12px;border-color:#d472ff55;transform:rotate(-45deg)}.contact-orbit div:nth-child(3){top:65px;right:65px;bottom:65px;left:65px;border-style:dashed;border-color:#ff699155}.contact-orbit i{position:absolute;top:17%;left:13%;font-style:normal;color:#ff6990}.contact-footer{position:absolute;bottom:0;left:10.3%;right:10.3%;height:49px;border-top:1px solid #ffffff1d;display:flex;align-items:center;justify-content:space-between;font:7px var(--mono);letter-spacing:.1em;color:#77717e}.contact-footer i{font-style:normal;color:var(--red);padding:0 5px}.contact-footer a{display:flex;gap:7px;align-items:center;color:#c7c1cd}.contact-footer a svg{color:var(--red)}@media(min-width:1500px){.hero-scene,.panel-section{padding-left:max(10.3%,calc((100% - 1180px)/2));padding-right:max(10.3%,calc((100% - 1180px)/2))}.hero-caption{left:max(10.3%,calc((100% - 1180px)/2))}.contact-footer{left:max(10.3%,calc((100% - 1180px)/2));right:max(10.3%,calc((100% - 1180px)/2))}}@media(max-width:1100px){.primary-nav{gap:12px}.primary-nav a{font-size:8px}.primary-nav a sup{font-size:6px}.nav-shell{padding-inline:4%}.hero-scene,.panel-section{padding-left:7%;padding-right:7%}.hero-caption{left:7%}.hero-copy{width:73%}.hero-title{font-size:clamp(82px,12vw,130px)}.hero-figure{right:0;width:39vw}.contact-footer{left:7%;right:7%}}@media(max-width:760px){html{scroll-padding-top:64px}.nav-shell{height:64px;padding-inline:6%}.primary-nav,.resume-nav{display:none}.nav-menu{display:grid;place-items:center;padding:8px;border:0;background:none;color:#f1edf5}.mobile-nav{position:fixed;z-index:39;top:64px;left:0;right:0;display:flex;flex-direction:column;padding:0 6%;background:#0b0a10;overflow:hidden;border-bottom:1px solid #ffffff24}.mobile-nav a{height:48px;display:flex;align-items:center;gap:12px;border-bottom:1px solid #ffffff18;font:9px var(--mono);color:#e6e1eb}.mobile-nav a span{color:var(--red);font-size:7px}.mobile-nav a svg{margin-left:auto;color:var(--red)}.hero-scene{height:calc(100svh - 64px);min-height:690px;max-height:850px;padding:103px 7% 70px;align-items:flex-start}.hero-caption{top:84px;left:7%;font-size:6px;letter-spacing:.08em;gap:6px}.hero-copy{width:100%;z-index:6}.hero-pretitle{font-size:7px;margin-bottom:27px}.hero-title{font-size:clamp(77px,15vw,112px)}.hero-title-last{font-size:.59em;margin-top:13px}.hero-subcopy{max-width:325px;margin-top:26px}.hero-subcopy p{font-size:9px}.hero-figure{right:-13%;width:68vw;height:58%;opacity:.58}.hero-vertical{display:none}.hero-light{right:-35%;width:450px;height:450px}.web-mark{width:95vw;height:95vw;right:-33%;top:50%;opacity:.72}.hero-index{left:7%;bottom:26px;font-size:7px}.scroll-cue{bottom:18px;font-size:6px}.hero-buttons{gap:16px}.button-primary,.button-quiet{font-size:7px}.panel-section{padding:60px 7% 63px}.section-meta{font-size:6px;letter-spacing:.08em}.section-meta span:last-child{font-size:6px}.origin-layout{grid-template-columns:1fr;gap:22px;padding:37px 0 39px}.origin-title h2,.education-intro h2,.skills-heading h2,.projects-intro h2,.experience-intro h2{font-size:61px}.origin-scribble{right:20%;bottom:-10px;font-size:35px}.large-copy{font-size:21px}.origin-story>p:not(.large-copy){font-size:9px}.origin-bottom{font-size:6px}.origin-bottom span:nth-child(2){display:none}.education-intro,.skills-heading,.projects-intro,.experience-intro{margin:34px 0 25px;align-items:flex-start}.education-intro{align-items:flex-end}.edu-stamp{width:72px;height:72px;flex:none}.edu-stamp svg{width:16px}.edu-stamp span{font-size:5px}.education-panel{grid-template-columns:1fr auto;gap:15px;padding:23px 19px;min-height:180px}.edu-year{grid-column:span 2;font-size:8px}.edu-details>span{font-size:6px}.edu-details h3{font-size:24px}.edu-details p{font-size:9px}.edu-gpa b{font-size:38px}.edu-gpa>span,.edu-gpa small{font-size:6px}.skills-heading,.projects-intro,.experience-intro{display:block}.skills-heading p,.projects-intro>p,.experience-intro>p{margin:15px 0 0;font-size:8px;max-width:310px}.skills-grid{grid-template-columns:repeat(2,1fr);gap:8px}.skill-panel,.skill-panel:nth-child(4),.skill-panel:nth-child(5){grid-column:span 1;min-height:175px;padding:13px 11px}.skill-panel:last-child{grid-column:span 2;min-height:142px}.skill-panel-top{font-size:6px;gap:5px}.skill-panel h3{font-size:20px;margin:15px 0 11px}.skill-tags{gap:4px}.skill-tags span{font-size:6px;padding:5px 6px}.skill-panel-art{font-size:58px}.project-filter{gap:5px;padding:9px 0 17px}.project-filter button{font-size:6px;padding:7px 8px}.project-grid{grid-template-columns:1fr;gap:11px}.project-art{height:190px}.project-content{padding:15px}.project-title-row h3{font-size:23px}.project-content>p{min-height:0;font-size:8px}.project-tech span{font-size:6px}.project-links{gap:11px}.project-links a{font-size:6px}.experience-intro{margin-bottom:29px}.experience-timeline:before{left:12px}.experience-row{grid-template-columns:26px 1fr;gap:4px 10px;margin-bottom:12px}.timeline-index{grid-row:span 2}.timeline-date{font-size:7px;padding-top:1px}.experience-card{grid-column:2;padding:15px}.experience-company{font-size:7px}.experience-company span{font-size:6px}.experience-card h3{font-size:23px}.experience-card>p{font-size:8px}.recognition-grid{grid-template-columns:1fr;gap:24px;margin-top:26px}.publication-card{min-height:370px;padding:21px}.publication-icon{margin:22px 0 15px}.publication-card h2{font-size:29px}.publication-card>p{font-size:7px}.publication-detail{font-size:8px}.recognition-column{gap:22px}.achievement-card p{font-size:8px}.cert-row b{font-size:7px}.contact-section{min-height:545px;padding-bottom:65px}.contact-section>.web-mark{width:90vw;height:90vw;right:-33%;top:48%}.contact-content{padding-top:31px}.contact-content h2{font-size:clamp(62px,13vw,83px)}.contact-content>p{font-size:9px;max-width:330px}.contact-email{font-size:20px;gap:8px}.contact-buttons{gap:6px;flex-wrap:wrap}.contact-buttons a,.contact-buttons button{padding:0 8px;font-size:6px}.contact-orbit{left:auto;right:-41%;top:225px;width:200px;height:200px;opacity:.55}.contact-footer{left:7%;right:7%;height:43px;font-size:6px}.contact-footer>span:last-child{display:none}}@media(max-width:380px){.hero-title{font-size:72px}.hero-caption{font-size:5px}.section-meta span:last-child{max-width:43%;text-align:right}.origin-title h2,.education-intro h2,.skills-heading h2,.projects-intro h2,.experience-intro h2{font-size:55px}.contact-buttons{gap:5px}.contact-buttons a,.contact-buttons button{font-size:5.5px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.mask-web{position:absolute;z-index:2;top:12%;right:5%;bottom:8%;left:5%;width:90%;height:80%;stroke:#f5efff31;stroke-width:1;fill:none;opacity:.72;mix-blend-mode:screen}.spider-emblem{position:absolute;top:21%;left:38%;width:25%;height:31%;fill:none;stroke:#ff577f;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(2px 0 #7187ff) drop-shadow(0 0 6px #ff356f80)}.project-orbit img{position:absolute;z-index:3;width:235px;height:auto;max-width:none;transform:rotate(27deg) scaleY(1.53);filter:drop-shadow(0 4px 14px #050309aa)}.spider-cursor{position:fixed;z-index:100;top:0;left:0;width:30px;height:30px;margin:-15px 0 0 -15px;opacity:0;pointer-events:none;transition:opacity .16s;will-change:transform}.cursor-visible{opacity:1}.spider-cursor:before,.spider-cursor:after{content:"";position:absolute;top:2px;right:2px;bottom:2px;left:2px;border:1px solid #ff3d79;border-radius:50%;clip-path:polygon(0 0,100% 0,100% 33%,0 33%);mix-blend-mode:screen;animation:cursor-glitch 2.6s steps(2,end) infinite}.spider-cursor:after{border-color:#7590ff;clip-path:polygon(0 66%,100% 66%,100% 100%,0 100%);animation-delay:.17s}.spider-cursor i{position:absolute;z-index:1;left:50%;top:50%;width:1px;height:12px;background:#f4eef9;transform-origin:50% 0}.spider-cursor i:nth-child(1){transform:rotate(0)}.spider-cursor i:nth-child(2){transform:rotate(90deg)}.spider-cursor i:nth-child(3){transform:rotate(180deg)}.spider-cursor i:nth-child(4){transform:rotate(270deg)}.spider-cursor b{position:absolute;z-index:2;left:50%;top:50%;width:5px;height:5px;border-radius:50%;background:#fff;transform:translate(-50%,-50%);box-shadow:0 0 7px 2px #ff356f,0 0 12px #6683ff}.spider-cursor.cursor-visible{animation:cursor-nudge 3.4s steps(1,end) infinite}@keyframes cursor-glitch{0%,93%,to{transform:translate(0)}94%{transform:translate(2px,-1px)}96%{transform:translate(-2px,1px)}98%{transform:translate(1px,1px)}}@keyframes cursor-nudge{0%,90%,to{margin-left:-15px}92%{margin-left:-13px}94%{margin-left:-16px}96%{margin-left:-14px}}@media(pointer:fine){.portfolio,.portfolio *{cursor:none!important}}@media(pointer:coarse){.spider-cursor{display:none}}@media(max-width:760px){.project-orbit img{width:215px}.mask-web{opacity:.47}.spider-emblem{width:22%;left:39%}}@media(prefers-reduced-motion:reduce){.spider-cursor:before,.spider-cursor:after,.spider-cursor.cursor-visible{animation:none}.project-orbit img{filter:none}}.figure-head{overflow:hidden}.mask-web{opacity:.9;filter:drop-shadow(0 0 4px #ffffff5c)}.figure-body{overflow:hidden}.spider-emblem{top:24%;left:39%;width:23%;height:28%;stroke-width:2.4;filter:drop-shadow(2px 0 #7187ff) drop-shadow(0 0 7px #ff356f)}.hero-figure{transform:translate3d(var(--hero-x,0px),var(--hero-y,0px),0);transition:transform .2s ease-out}.project-card{position:relative}.project-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;pointer-events:none;opacity:0;background:radial-gradient(340px circle at var(--glow-x,50%) var(--glow-y,50%),#ffffff18,transparent 65%);transition:opacity .3s}.project-card:hover:after{opacity:1}.project-art{transition:filter .35s}.project-card:hover .project-art{filter:saturate(1.22)}.project-orbit{transition:filter .3s,scale .35s}.project-card:hover .project-orbit{scale:1.05;filter:drop-shadow(0 0 16px #ff356f55)}.project-orbit img{transition:filter .35s,scale .35s}.project-card:hover .project-orbit img{scale:1.08;filter:drop-shadow(0 0 18px #fa477b88)}.project-filter button,.resume-nav,.primary-nav a,.button-primary,.button-quiet,.project-links a,.contact-buttons a,.contact-buttons button{transition:all .24s cubic-bezier(.22,1,.36,1)}.hero-caption,.hero-pretitle,.eyebrow{font-size:10px}.hero-subcopy p{font-size:14px}.button-primary,.button-quiet,.primary-nav a{font-size:10px}.resume-nav,.section-meta{font-size:9px}.origin-story>p:not(.large-copy){font-size:13px}.origin-signature small,.origin-bottom,.edu-year,.edu-details>span,.edu-gpa>span,.edu-gpa small{font-size:9px}.edu-details p{font-size:12px}.skills-heading p,.projects-intro>p,.experience-intro>p{font-size:12px}.skill-panel-top{font-size:8px}.skill-tags span,.project-tech span{font-size:9px}.project-art-top{font-size:8px}.project-art-label{font-size:7px}.project-title-row h3{font-size:27px}.project-content>p{font-size:12px;line-height:1.75}.project-links a{font-size:9px}.project-endnote{font-size:8px}.timeline-date,.experience-company{font-size:9px}.experience-card>p{font-size:12px}.achievement-card p{font-size:11px;line-height:1.7}.cert-row b{font-size:10px}.publication-card>p{font-size:9px}.publication-detail{font-size:12px;line-height:1.8}.publication-card>a{font-size:9px}.contact-content>p{font-size:13px}.contact-buttons a,.contact-buttons button{font-size:9px}.contact-footer{font-size:8px}@media(max-width:760px){.hero-caption{font-size:7px}.hero-pretitle,.eyebrow{font-size:8px}.hero-subcopy p{font-size:11px}.button-primary,.button-quiet{font-size:8px}.section-meta{font-size:7px}.origin-story>p:not(.large-copy){font-size:11px}.origin-signature small,.origin-bottom,.edu-year,.edu-details>span,.edu-gpa>span,.edu-gpa small{font-size:7px}.edu-details p{font-size:10px}.skills-heading p,.projects-intro>p,.experience-intro>p{font-size:10px}.skill-panel-top{font-size:6.5px}.skill-tags span,.project-tech span{font-size:7.5px}.project-art-top{font-size:7px}.project-art-label{font-size:6px}.project-title-row h3{font-size:25px}.project-content>p{font-size:10px}.project-links a,.project-endnote{font-size:7px}.timeline-date,.experience-company{font-size:8px}.experience-card>p{font-size:10px}.achievement-card p{font-size:10px}.cert-row b{font-size:9px}.publication-card>p{font-size:8px}.publication-detail{font-size:10px}.publication-card>a{font-size:8px}.contact-content>p{font-size:11px}.contact-buttons a,.contact-buttons button,.contact-footer{font-size:7px}.project-orbit img{width:200px}}.hero-copy{width:62%}.hero-art-frame{position:absolute;z-index:2;right:4.5%;top:51%;width:min(43vw,570px);aspect-ratio:422/319;margin:0;transform:translateY(-50%) rotate(1.2deg);padding:8px;background:#111019;border:1px solid #ff58836e;box-shadow:0 18px 80px #0009,0 0 38px #fa3c7526;clip-path:polygon(3% 0,100% 0,100% 92%,95% 100%,0 100%,0 5%);transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s}.hero-art-frame:hover{transform:translateY(-52%) rotate(0);box-shadow:0 22px 90px #000b,0 0 52px #fa3c7542}.hero-art-frame img{width:100%;height:100%;display:block;object-fit:cover;object-position:center;filter:saturate(1.08) contrast(1.025)}.hero-art-frame:after{content:"";position:absolute;top:8px;right:8px;bottom:8px;left:8px;pointer-events:none;background:linear-gradient(90deg,#08070c18,#ff326f09 50%,#5577ff17);mix-blend-mode:screen}.hero-art-frame figcaption{position:absolute;z-index:2;left:18px;bottom:17px;padding:7px 9px;background:#09080dd9;border-left:2px solid var(--red);font:9px var(--mono);letter-spacing:.14em;color:#fff}.hero-art-frame figcaption i{font-style:normal;color:var(--red);padding:0 5px}.hero-copy{z-index:4}.hero-vertical{z-index:3}.hero-index{z-index:4}.scroll-cue{z-index:5}.primary-nav a{font-size:12px}.resume-nav,.button-primary,.button-quiet,.hero-caption,.hero-pretitle,.eyebrow{font-size:11px}.hero-subcopy p{font-size:15px;line-height:1.8}.section-meta{font-size:10px}.origin-story>p:not(.large-copy){font-size:15px;line-height:1.9}.origin-signature small,.origin-bottom,.edu-year,.edu-details>span,.edu-gpa>span,.edu-gpa small{font-size:10px}.edu-details h3{font-size:31px}.edu-details p{font-size:14px}.skills-heading p,.projects-intro>p,.experience-intro>p{font-size:14px;line-height:1.8}.skill-panel-top{font-size:9px}.skill-panel h3{font-size:27px}.skill-tags span,.project-tech span{font-size:10px;padding:7px 9px}.project-art-top{font-size:9px}.project-art-label{font-size:8px}.project-title-row h3{font-size:30px}.project-content>p{font-size:14px;line-height:1.75;min-height:85px}.project-links a{font-size:10px}.project-endnote{font-size:9px}.timeline-date,.experience-company{font-size:10px}.experience-card h3{font-size:29px}.experience-card>p{font-size:14px;line-height:1.8}.achievement-card p{font-size:13px;line-height:1.75}.cert-row b{font-size:12px}.publication-card>p{font-size:10px}.publication-detail{font-size:14px;line-height:1.8}.publication-card>a{font-size:10px}.contact-content>p{font-size:15px;line-height:1.8}.contact-buttons a,.contact-buttons button{font-size:10px}.contact-footer{font-size:9px}.hero-scene{--hero-x:0px;--hero-y:0px}@media(max-width:1100px){.hero-copy{width:60%}.hero-title{font-size:clamp(78px,10.4vw,125px)}.hero-title-last{font-size:.57em}.hero-art-frame{right:3%;width:43vw}}@media(max-width:760px){.hero-copy{width:100%}.hero-art-frame{width:min(68vw,340px);right:5%;top:auto;bottom:58px;transform:none;opacity:.85}.hero-art-frame:hover{transform:translateY(-3px)}.hero-art-frame figcaption{left:10px;bottom:10px;font-size:7px}.hero-title{font-size:clamp(72px,14vw,105px)}.hero-title-last{font-size:.56em}.hero-caption,.hero-pretitle,.eyebrow{font-size:9px}.hero-subcopy p{font-size:12px}.button-primary,.button-quiet{font-size:9px}.section-meta{font-size:8px}.origin-story>p:not(.large-copy){font-size:12px}.origin-signature small,.origin-bottom,.edu-year,.edu-details>span,.edu-gpa>span,.edu-gpa small{font-size:8px}.edu-details h3{font-size:26px}.edu-details p{font-size:11px}.skills-heading p,.projects-intro>p,.experience-intro>p{font-size:12px}.skill-panel-top{font-size:8px}.skill-panel h3{font-size:23px}.skill-tags span,.project-tech span{font-size:9px;padding:6px 7px}.project-art-top{font-size:8px}.project-art-label{font-size:7px}.project-title-row h3{font-size:27px}.project-content>p{font-size:12px;line-height:1.75;min-height:0}.project-links a{font-size:9px}.project-endnote{font-size:8px}.timeline-date,.experience-company{font-size:9px}.experience-card h3{font-size:26px}.experience-card>p{font-size:12px;line-height:1.75}.achievement-card p{font-size:11px}.cert-row b{font-size:10px}.publication-card>p{font-size:9px}.publication-detail{font-size:12px}.publication-card>a{font-size:9px}.contact-content>p{font-size:12px}.contact-buttons a,.contact-buttons button{font-size:8px}.contact-footer{font-size:7px}.hero-vertical{display:none}}.spider-cursor{width:35px;height:42px;margin:-21px 0 0 -17.5px}.spider-cursor img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 0 3px #fff) drop-shadow(2px 0 #ff2ab2) drop-shadow(-2px 0 #00eaff) drop-shadow(0 2px #4dff9a)}.spider-cursor:before,.spider-cursor:after{top:0;right:0;bottom:0;left:0;border:0;border-radius:0;background:url(../images/spider-glitch-white.png) center/contain no-repeat;clip-path:inset(7% 0 68% 0);mix-blend-mode:screen}.spider-cursor:before{filter:drop-shadow(2px 0 #ff2ab2);animation:cursor-glitch 1.8s steps(2,end) infinite}.spider-cursor:after{clip-path:inset(63% 0 8% 0);filter:drop-shadow(-2px 0 #00eaff);animation:cursor-glitch 1.8s steps(2,end) infinite reverse}.spider-cursor i,.spider-cursor b{display:none}.end-spider-mark{position:absolute;z-index:1;right:9%;bottom:62px;width:clamp(170px,20vw,270px);height:auto;transform:rotate(13deg);mix-blend-mode:screen;opacity:.94;filter:drop-shadow(8px 4px 0 #ff2aaa) drop-shadow(-7px -2px 0 #00e9ff);transition:transform .5s cubic-bezier(.2,.8,.2,1),filter .4s}.end-spider-mark:hover{transform:rotate(2deg) scale(1.06);filter:drop-shadow(10px 0 #ff2aaa) drop-shadow(-9px 0 #00e9ff) drop-shadow(0 0 18px #44ff9b)}.contact-content{position:relative;z-index:2}.contact-icon-links{gap:12px;margin-top:26px}.contact-icon-links a{width:48px;height:48px;padding:0;justify-content:center;border-color:#fff4;color:#f4f0f7}.contact-icon-links a svg{width:20px;height:20px}.contact-icon-links a:hover{background:#ffffff10;transform:translateY(-4px);box-shadow:0 8px 28px #ff2aaa2e,-4px 0 17px #00eaff25}.hero-art-frame figcaption{display:none}.hero-art-frame{box-shadow:0 18px 80px #0009,0 0 38px #fa3c7526,9px 4px #ff2aaa66,-7px -3px #00eaff55}.hero-art-frame:hover{box-shadow:0 22px 90px #000b,0 0 52px #fa3c7542,7px 3px #ff2aaa88,-6px -3px #00eaff77}@media(max-width:760px){.spider-cursor{display:none}.end-spider-mark{width:92px;right:4%;bottom:52px;opacity:.72}.contact-icon-links{gap:9px}.contact-icon-links a{width:43px;height:43px}.contact-section{padding-bottom:64px}}@media(prefers-reduced-motion:reduce){.end-spider-mark,.contact-icon-links a{transition:none}}.caption-typed{display:inline-flex;align-items:center;gap:10px;min-height:1.3em}.typewriter-line{display:inline-flex;align-items:center;white-space:pre}.typewriter-line i{margin-left:2px;color:#ff4a80;font-style:normal;font-size:.82em;animation:type-caret .8s steps(2,end) infinite}@keyframes type-caret{50%{opacity:0}}.hero-caption{font-size:clamp(12px,.95vw,15px);gap:12px;letter-spacing:.14em}.hero-pretitle{font-size:clamp(12px,.92vw,14px)}.hero-caption .live-dot{flex:none}.hero-caption .caption-sep{color:#ff356f}.soundtrack-dock{position:fixed;z-index:80;right:18px;bottom:16px;color:#f4eff7;font-family:Manrope,Arial,sans-serif}.soundtrack-closed{width:82px;height:82px}.soundtrack-open{width:366px;max-width:calc(100vw - 24px)}.soundtrack-dock audio{display:none}.vinyl-launch{position:relative;width:82px;height:82px;padding:0;display:grid;place-items:center;border:1px solid #ff45a499;border-radius:50%;background:#09080d;box-shadow:0 6px 27px #000b,0 0 24px #ff31a433,0 0 20px #13dfff26;overflow:visible;cursor:pointer}.vinyl-launch:before{content:"";position:absolute;top:-5px;right:-5px;bottom:-5px;left:-5px;border:1px dashed #28e9ef77;border-radius:50%;animation:record-rim 16s linear infinite}.vinyl-grooves{position:relative;width:68px;height:68px;display:grid;place-items:center;border-radius:50%;background:repeating-radial-gradient(circle at center,#17131c 0,#17131c 2px,#302435 2.7px,#302435 3.2px,#100e15 3.8px,#100e15 5.2px);border:1px solid #ffffff52;box-shadow:inset 0 0 0 5px #0a090e,inset 0 0 0 6px #ffffff24,0 0 11px #ff2da441;overflow:hidden}.vinyl-grooves:before{content:"";position:absolute;top:34%;right:34%;bottom:34%;left:34%;border:1px solid #ffffff55;border-radius:50%;background:radial-gradient(circle,#111 0 9%,var(--record-color,#ff3e91) 10% 19%,#07070a 21% 100%)}.vinyl-grooves:after{content:"";position:absolute;top:46%;right:46%;bottom:46%;left:46%;border-radius:50%;background:#eee8f4;box-shadow:0 0 7px var(--record-color,#ff3e91)}.vinyl-grooves>b{position:absolute;z-index:2;top:24%;width:30%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;text-align:center;text-transform:uppercase;font:500 5px var(--mono);letter-spacing:.02em;color:#eae5ef}.vinyl-arm{position:absolute;z-index:3;width:20px;height:2px;right:6px;top:16px;background:#a8eaff;transform:rotate(49deg);transform-origin:right center;filter:drop-shadow(0 0 4px #00eaff)}.vinyl-arm:before{content:"";position:absolute;right:-2px;top:-2px;width:5px;height:5px;border-radius:50%;background:#ff3da5}.vinyl-eq{position:absolute;z-index:4;right:-6px;bottom:5px;display:flex;gap:2px;align-items:center;height:14px}.vinyl-eq i{height:4px;width:2px;background:#44f4ef;box-shadow:0 0 5px #00eaff}.is-spinning .vinyl-grooves{animation:vinyl-spin 4.8s linear infinite}.is-spinning .vinyl-eq i{animation:vinyl-meter .65s ease-in-out infinite alternate}.vinyl-eq i:nth-child(2){animation-delay:.18s}.vinyl-eq i:nth-child(3){animation-delay:.35s}@keyframes vinyl-spin{to{transform:rotate(360deg)}}@keyframes record-rim{to{transform:rotate(360deg)}}@keyframes vinyl-meter{to{height:13px;background:#ff43aa}}.hue-rose{--record-color:#ff3e91}.hue-violet{--record-color:#bc63ff}.hue-blue{--record-color:#528dff}.hue-pink{--record-color:#ff56bd}.hue-gold{--record-color:#ffc659}.hue-green{--record-color:#62fba2}.hue-red{--record-color:#ff4a5f}.soundtrack-panel{width:100%;padding:15px 15px 12px;border:1px solid #fa49ad82;background:linear-gradient(145deg,#111019f5,#08080df5 78%);box-shadow:0 18px 65px #000c,0 0 28px #ff2d9b21,4px 0 #25eafa2b,-3px 0 #ff45b329;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);clip-path:polygon(0 0,97% 0,100% 3%,100% 100%,3% 100%,0 97%)}.soundtrack-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ffffff20;padding-bottom:10px}.soundtrack-header>div{display:flex;flex-direction:column;gap:4px}.soundtrack-header span,.playlist-heading>span{font:9px var(--mono);letter-spacing:.15em;color:#f5eef7}.soundtrack-header small,.playlist-heading small{font:7px var(--mono);letter-spacing:.09em;color:#a39cab}.soundtrack-header button{width:29px;height:29px;display:grid;place-items:center;border:1px solid #ffffff29;background:#ffffff08;color:#d4cfda;cursor:pointer}.soundtrack-header button:hover{border-color:#ff42ab;color:#fff}.soundtrack-now{display:flex;align-items:center;gap:16px;padding:14px 2px 11px}.vinyl-large{flex:none;width:112px;height:112px;padding:0;border:0;border-radius:50%;background:#050508;display:grid;place-items:center;box-shadow:0 0 19px #ff3e9134;cursor:pointer}.vinyl-large .vinyl-grooves{width:108px;height:108px}.vinyl-large .vinyl-grooves>b{font-size:6px}.now-track-info{min-width:0;flex:1}.now-track-info>span{font:7px var(--mono);letter-spacing:.13em;color:#31e6ef}.now-track-info h3{margin:6px 0 3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:600 23px/1 var(--display);color:#fbf7ff}.now-track-info>small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:7px var(--mono);letter-spacing:.07em;color:#a8a2ae}.transport{display:flex;align-items:center;gap:9px;margin-top:12px}.transport>button{width:28px;height:28px;padding:0;display:grid;place-items:center;border:1px solid #ffffff2d;background:#ffffff08;color:#eae4ef;cursor:pointer}.transport>button:hover{border-color:#ff42ab;color:#fff;box-shadow:0 0 11px #ff34a330}.transport .skip-back{transform:rotate(180deg)}.transport .transport-play{width:32px;height:32px;background:#ff3695;border-color:#ff72b4;color:#fff}.transport-volume{display:flex;align-items:center;gap:5px;margin-left:auto;color:#34e9e4}.transport-volume input{width:51px;height:3px;accent-color:#ff39a4}.track-progress{display:grid;grid-template-columns:30px 1fr 30px;gap:8px;align-items:center;padding:0 2px 12px;color:#a8a2ae;font:7px var(--mono)}.track-progress input{width:100%;height:3px;accent-color:#ff3ba1}.playlist-heading{display:flex;justify-content:space-between;align-items:center;padding:10px 1px 7px;border-top:1px solid #ffffff21}.track-list{max-height:221px;overflow:auto;scrollbar-width:thin;scrollbar-color:#ff4196 #17141d}.track-row{width:100%;height:40px;padding:0 8px;display:flex;align-items:center;gap:10px;border:0;border-top:1px solid #ffffff0d;background:transparent;text-align:left;color:#aaa4b2;cursor:pointer;transition:background .2s,color .2s}.track-row:hover{background:#ffffff0a;color:#fff}.track-active{background:linear-gradient(90deg,#ff36951d,#27e6f20b);color:#fff}.track-number{width:20px;flex:none;text-align:center;font:8px var(--mono);color:#ff61aa}.track-row-name{min-width:0;flex:1;display:flex;flex-direction:column;gap:3px}.track-row-name b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:600}.track-row-name small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:6px var(--mono);letter-spacing:.06em;color:#8e8895}.track-row>svg{flex:none;color:#25e3ee}.track-status{font:6px var(--mono);letter-spacing:.08em;color:#40f6d0}.playing-bars{height:14px;display:flex;align-items:center;justify-content:center;gap:2px}.playing-bars i{height:5px;width:2px;background:#44f0db;animation:vinyl-meter .5s ease-in-out infinite alternate}.playing-bars i:nth-child(2){animation-delay:.16s}.playing-bars i:nth-child(3){animation-delay:.28s}@media(max-width:760px){.hero-caption{left:7%;right:6%;top:81px;align-items:flex-start;font-size:9px;letter-spacing:.08em}.caption-typed{flex-wrap:wrap;column-gap:7px;row-gap:2px}.hero-pretitle{font-size:9px}.soundtrack-dock{right:12px;bottom:12px}.soundtrack-closed,.vinyl-launch{width:72px;height:72px}.vinyl-launch .vinyl-grooves{width:60px;height:60px}.soundtrack-open{width:min(360px,calc(100vw - 24px))}.soundtrack-panel{padding:12px 12px 10px}.soundtrack-now{gap:11px;padding-block:12px 9px}.vinyl-large{width:90px;height:90px}.vinyl-large .vinyl-grooves{width:86px;height:86px}.now-track-info h3{font-size:21px}.track-list{max-height:min(220px,30vh)}.track-row{height:38px}.track-row-name b{font-size:10px}}@media(prefers-reduced-motion:reduce){.typewriter-line i,.is-spinning .vinyl-grooves,.vinyl-launch:before,.is-spinning .vinyl-eq i,.playing-bars i{animation:none}.soundtrack-dock{transition:none}}.soundtrack-dock{transform-origin:100% 100%;will-change:width,height,transform}.soundtrack-open{width:378px;max-width:calc(100vw - 24px)}.soundtrack-panel{position:relative;isolation:isolate;transform-origin:100% 100%;border-radius:5px;background:radial-gradient(ellipse at 100% 0%,#46203d6b,transparent 43%),linear-gradient(145deg,#14121bfa,#09090ff5 76%);border:1px solid #ff49ad9c;box-shadow:0 22px 72px #000d,0 0 34px #fb33a727,5px 0 #19def137,-4px 0 #fa3d9a3a;overflow:hidden}.soundtrack-panel:before{content:"";position:absolute;z-index:-1;inset:0 0 auto;height:2px;background:linear-gradient(90deg,transparent,#ff3ba5 22%,#20e9f3 60%,#65ff9a 87%,transparent);filter:drop-shadow(0 0 7px #ff3ba5)}.soundtrack-panel:after{content:"";position:absolute;z-index:-1;right:-85px;top:68px;width:210px;height:210px;border:1px solid #ff48a421;border-radius:50%;box-shadow:0 0 0 13px #ff48a20a,0 0 0 28px #49ddff08;pointer-events:none}.soundtrack-header{padding:5px 1px 12px}.soundtrack-header span{font-size:10px;color:#f7f0f8;text-shadow:0 0 12px #ff3da36b}.soundtrack-header small{font-size:8px;color:#aaa2b2}.soundtrack-header button{border-radius:50%;width:31px;height:31px;transition:all .2s}.soundtrack-header button:hover{background:#ff3ba525;transform:rotate(90deg)}.soundtrack-now{gap:17px;padding:17px 3px 13px}.vinyl-large{width:120px;height:120px;background:radial-gradient(circle,#29202e 0,#29202e 49%,#08070b 50%);box-shadow:0 0 0 1px #ffffff28,0 0 0 5px #ff42961a,0 0 25px #fb369634,6px 0 22px #17dff02a;transition:box-shadow .3s,transform .3s}.vinyl-large:hover{transform:scale(1.035);box-shadow:0 0 0 1px #fff5,0 0 0 5px #ff42962e,0 0 34px #fb369663,6px 0 28px #17dff03c}.vinyl-large .vinyl-grooves{width:114px;height:114px}.vinyl-grooves{background:repeating-radial-gradient(circle at 47% 46%,#141117 0,#141117 1.8px,#38313c,#38313c 2.8px,#100e15 3.1px,#100e15 4.6px),conic-gradient(from 10deg,#18141c,#38313c,#100e15,#342d38,#121016,#18141c);box-shadow:inset 0 0 0 5px #09080d,inset 0 0 0 6px #ffffff35,inset 9px 4px 18px #ff58bd15,0 0 12px #ff2da441}.vinyl-grooves i{position:absolute;border:1px solid #ffffff12;border-radius:50%;top:12%;right:12%;bottom:12%;left:12%}.vinyl-grooves i:nth-child(2){top:22%;right:22%;bottom:22%;left:22%;border-color:#ffffff0c}.vinyl-grooves i:nth-child(3){top:8%;right:8%;bottom:8%;left:8%;border-color:#ff7cb41c}.vinyl-grooves i:nth-child(4){top:29%;right:29%;bottom:29%;left:29%;border-color:#ffffff12}.vinyl-grooves:before{top:32%;right:32%;bottom:32%;left:32%;border:1px solid #ffffff89;background:radial-gradient(circle at 34% 27%,#ffffff55,transparent 21%),radial-gradient(circle,#111018 0 45%,var(--record-color,#ff3e91) 48% 76%,#08070b 79%);box-shadow:0 0 10px var(--record-color,#ff3e91)}.vinyl-grooves:after{z-index:5;width:4px;height:4px;inset:auto;left:50%;top:50%;transform:translate(-50%,-50%);background:#f4eff7;box-shadow:0 0 6px #fff}.vinyl-center{position:absolute;z-index:4;top:33%;right:33%;bottom:33%;left:33%;display:grid;place-items:center;pointer-events:none}.vinyl-center img{width:59%;height:64%;object-fit:contain;filter:drop-shadow(0 0 3px #fff) drop-shadow(1px 0 #ff39aa) drop-shadow(-1px 0 #24e8ef)}.vinyl-center b{position:absolute;right:-9px;bottom:-7px;font:6px var(--mono);color:#fff;text-shadow:0 0 5px var(--record-color,#ff3e91)}.vinyl-grooves>b{display:none}.vinyl-launch{width:82px;height:82px;border:1px solid #ff45a4bd;background:radial-gradient(circle at 28% 24%,#342331,#07070b 66%);box-shadow:0 7px 30px #000b,0 0 0 4px #ff43a116,0 0 28px #ff31a43b,5px 0 22px #14e4f02c,-4px 0 18px #5dff9121;transition:transform .3s,box-shadow .3s}.vinyl-launch:hover{transform:scale(1.07) rotate(-4deg);box-shadow:0 8px 35px #000c,0 0 0 4px #ff43a12b,0 0 38px #ff31a45e,7px 0 28px #14e4f04a}.vinyl-launch .vinyl-grooves{width:70px;height:70px}.vinyl-arm{width:22px;height:2px;right:8px;top:17px;box-shadow:0 0 5px #19e8f6}.vinyl-eq{right:-8px;bottom:6px}.now-track-info>span{font-size:8px;letter-spacing:.16em;color:#39ecf2}.now-track-info h3{font-size:27px;margin:7px 0 5px;letter-spacing:.01em;text-shadow:1px 0 #ff41a4,-1px 0 #27e6f1}.now-track-info>small{font-size:8px;color:#bdb4c3}.transport{gap:8px;margin-top:14px}.transport>button{border-radius:50%;width:30px;height:30px;background:#ffffff0b}.transport .transport-play{width:37px;height:37px;border-radius:50%;box-shadow:0 0 18px #ff399a55;background:linear-gradient(140deg,#ff3697,#d42d86)}.transport-volume{gap:6px}.transport-volume input{width:55px}.track-progress{grid-template-columns:32px 1fr 32px;font-size:8px;padding-bottom:12px}.track-progress input{accent-color:#28e8ee}.playlist-heading{padding-top:12px;padding-bottom:8px}.playlist-heading>span{font-size:9px}.playlist-heading small{font-size:7px}.track-list{max-height:230px;scrollbar-color:#e53ba0 #17141d}.track-row{height:42px;padding-inline:9px;transition:background .2s,transform .2s}.track-row:hover{transform:translate(2px);background:linear-gradient(90deg,#ff42a51e,#27e6f20d)}.track-active{background:linear-gradient(90deg,#ff369525,#27e6f20d);box-shadow:inset 2px 0 #ff42a5}.track-row-name b{font-size:11px}.track-row-name small{font-size:7px}.track-number{font-size:9px}.track-status{font-size:7px;color:#5bffc6}.soundtrack-open .soundtrack-panel{animation:panel-shimmer .8s ease-out both}@keyframes panel-shimmer{0%{box-shadow:0 0 #ff3ba500,0 0 #19def100}45%{box-shadow:0 22px 72px #000d,0 0 42px #fb33a748,6px 0 #19def14c,-5px 0 #fa3d9a4a}to{box-shadow:0 22px 72px #000d,0 0 34px #fb33a727,5px 0 #19def137,-4px 0 #fa3d9a3a}}@media(max-width:760px){.soundtrack-open{width:min(378px,calc(100vw - 24px))}.soundtrack-now{gap:12px}.vinyl-large{width:104px;height:104px}.vinyl-large .vinyl-grooves{width:98px;height:98px}.now-track-info h3{font-size:23px}.track-list{max-height:min(230px,31vh)}}@media(prefers-reduced-motion:reduce){.soundtrack-open .soundtrack-panel{animation:none}.vinyl-launch:hover,.vinyl-large:hover,.track-row:hover{transform:none}}.spider-cursor.cursor-visible{opacity:.76}.spider-cursor img{filter:drop-shadow(0 0 1.5px #fff) drop-shadow(1px 0 #ff2ab2) drop-shadow(-1px 0 #00eaff) drop-shadow(0 1px #4dff9a)}.spider-cursor:before,.spider-cursor:after{opacity:.52}.spider-cursor:before{filter:drop-shadow(1px 0 #ff2ab2)}.spider-cursor:after{filter:drop-shadow(-1px 0 #00eaff)}.transport .transport-mute{width:25px;height:25px;border:0;background:transparent;color:#80f3ee}.transport .transport-mute:hover{color:#ff5aac;background:#ff38a51b;box-shadow:none}.transport .transport-mute svg{width:15px;height:15px}.transport-volume{min-width:42px}.transport-volume input{width:44px}.transport-mute[aria-label=Unmute]{color:#ff70b7}@media(max-width:760px){.transport-volume input{width:37px}.transport .transport-mute{width:22px}}.hero-pretitle{position:relative;z-index:8;display:inline-flex;align-items:center;gap:11px;width:max-content;min-width:286px;max-width:100%;min-height:34px;margin:0 0 34px;padding:7px 11px;border-left:2px solid #ff356f;background:linear-gradient(90deg,#160e18e8,#0c0b105e);box-shadow:inset 0 0 20px #ff356f0a;white-space:nowrap;overflow:hidden;line-height:1.25}.hero-pretitle .typewriter-line{min-height:1.25em}.hero-title{line-height:.84;gap:5px}.hero-title-last{margin-top:8px}.hero-buttons{gap:20px}.hero-buttons .button-quiet{display:inline-flex;align-items:center;gap:8px;color:#e4dfe9;border-bottom-color:#ff4b8b7d}.hero-buttons .button-quiet svg{color:#ff5b9b}.resume-nav{white-space:nowrap}.hero-caption{position:relative;top:auto;left:auto;flex-wrap:wrap;width:max-content;max-width:78%;row-gap:10px;margin:0 0 30px}.caption-tagline{flex:0 0 100%;display:flex;align-items:center;gap:10px;margin-left:16px;padding:7px 12px;border-left:2px solid #ff356f;background:linear-gradient(90deg,#160e18e8,#0c0b105e);color:#ff7898;line-height:1.25;white-space:nowrap}.caption-tagline b{font-weight:400;color:#8794ff}.hero-caption>i{font-style:normal;color:var(--red)}.caption-portfolio{color:#c8c2cf}@media(max-width:1100px){.hero-pretitle{min-width:258px;min-height:31px;margin-bottom:29px;font-size:10px}.hero-title{line-height:.82;gap:3px}}@media(max-width:760px){.hero-pretitle{min-width:0;width:max-content;max-width:100%;min-height:28px;margin-bottom:27px;padding:6px 8px;font-size:8px}.hero-title{line-height:.83;gap:2px}.hero-title-last{margin-top:8px}.hero-buttons{gap:13px;flex-wrap:wrap}.hero-buttons .button-primary,.hero-buttons .button-quiet{font-size:8px}.hero-caption{position:relative;top:auto;left:auto;width:max-content;max-width:100%;row-gap:8px;margin-bottom:24px}.caption-tagline{margin-left:12px;padding:6px 9px}.hero-caption>i,.caption-portfolio{font-size:6px}}@media(prefers-reduced-motion:reduce){.hero-title>span,.hero-title>em,.hero-subcopy,.hero-buttons{transition:none}}
