:root{color:#e7ecea;background:#050706;font-family:JetBrains Mono,SFMono-Regular,Consolas,Noto Sans SC,monospace;font-synthesis:none;text-rendering:geometricPrecision;--cyan: #76e9ee;--line: rgba(184, 205, 202, .2);--panel: rgba(10, 13, 12, .94)}@font-face{font-family:Zpix;src:url(/assets/fonts/zpix.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth;background:#050706}body{margin:0;min-width:320px;background:#050706}body.intro-locked{overflow:hidden}button,a{font:inherit}button{color:inherit}a{color:inherit;text-decoration:none}.opening-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20}.opening-section{width:100%;height:100%;background:#020303}.opening-stage{position:relative;width:100%;height:100vh;overflow:hidden;background:#020303}.opening-media{position:absolute;top:0;right:0;bottom:0;left:0;will-change:transform,opacity}.opening-media video{width:100%;height:100%;object-fit:cover;display:block}.opening-video{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;pointer-events:none}.opening-video.is-active{opacity:1}.portfolio-home{--home-hero-h: clamp(218px, 27vh, 300px);--home-bottom-pad: clamp(16px, 2.5vh, 28px);--home-gap: clamp(10px, 1.2vh, 12px);--home-card-pad: clamp(18px, 2.6vh, 28px);height:100vh;padding:0 2.5vw var(--home-bottom-pad);position:relative;z-index:2;overflow:hidden;background:#030504;color:#e8eeee;font-family:Pixelify Sans,Zpix,sans-serif;font-optical-sizing:auto;font-weight:400;font-style:normal}.portfolio-home *,.portfolio-home *:before,.portfolio-home *:after{font-family:Pixelify Sans,Zpix,sans-serif;font-optical-sizing:auto;font-style:normal}.portfolio-home:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-2;background:radial-gradient(circle at 82% 18%,rgba(145,202,213,.32),transparent 9%),radial-gradient(circle at 78% 30%,rgba(210,217,214,.25),transparent 13%),linear-gradient(180deg,#020303,#060908 48%,#030504)}.portfolio-home:after{content:"";position:absolute;inset:64px 0 auto;height:var(--home-hero-h);z-index:-1;opacity:.92;background-image:url(/assets/home-archive-bg-optimized.webp);background-size:cover;background-position:center top;background-repeat:no-repeat;-webkit-mask-image:linear-gradient(180deg,#000 12%,rgba(0,0,0,.88) 78%,transparent 100%);mask-image:linear-gradient(180deg,#000 12%,rgba(0,0,0,.88) 78%,transparent 100%)}.home-shell-header{height:64px;max-width:1680px;margin:0 auto;display:grid;grid-template-columns:190px 1fr 86px;align-items:center;border-bottom:1px solid rgba(189,220,215,.16)}.brand-mark,.theme-trigger,.home-nav button,.home-card button{border:0;background:transparent;cursor:pointer}.brand-mark{width:max-content;padding:0;display:grid;gap:2px;color:#f2f7f6;text-align:left}.brand-mark span{font-size:18px;line-height:1}.brand-mark small{color:#e5efec94;font-size:9px;letter-spacing:4px}.home-nav{height:100%;display:flex;justify-content:center;gap:clamp(30px,6vw,92px)}.home-nav button{position:relative;padding:0 8px;color:#e8f0eea3;font-size:16px}.home-nav button:after{content:"";position:absolute;left:50%;bottom:0;width:14px;height:3px;transform:translate(-50%) scaleX(0);background:var(--cyan);transition:transform .2s}.home-nav button:hover,.home-nav button:focus-visible{color:var(--cyan);outline:none}.home-nav button:hover:after,.home-nav button:focus-visible:after{transform:translate(-50%) scaleX(1)}.theme-trigger{justify-self:end;width:44px;height:44px;display:grid;place-items:center;border:1px solid transparent;color:#e8f0eec7}.theme-trigger:hover,.theme-trigger:focus-visible{border-color:var(--line);color:var(--cyan);outline:none}.home-hero{height:var(--home-hero-h);max-width:1680px;margin:0 auto;position:relative;display:flex;align-items:center}.star-field{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.star-field:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0}.hero-copy{padding:clamp(28px,4.2vh,46px) 0 clamp(18px,2.6vh,28px) 92px}.hero-copy p{margin:0 0 clamp(12px,1.7vh,18px);display:flex;align-items:center;gap:11px;color:#e4efecb3;font-size:11px}.hero-copy p span{width:8px;height:8px;background:var(--cyan);box-shadow:0 0 16px #76e9eecc}.hero-copy h1{margin:0;max-width:660px;font-size:clamp(24px,3vw,39px);line-height:clamp(1.48,4.1vh,1.62);font-weight:400;letter-spacing:0;text-shadow:0 0 18px rgba(230,248,248,.14)}.hero-copy>span{margin-top:clamp(14px,2.1vh,22px);display:inline-flex;color:#e5edebb8;font-size:15px}.home-bento{--x: 50%;--y: 50%;--r: 260px;height:calc(100vh - 64px - var(--home-hero-h) - var(--home-bottom-pad));max-width:1680px;margin:0 auto;position:relative;display:grid;grid-template-columns:260px minmax(320px,1.45fr) minmax(430px,2.15fr) 340px;gap:var(--home-gap)}.home-bento>*{min-height:0}.home-card{--mouse-x: 50%;--mouse-y: 50%;--spotlight-color: rgba(255, 255, 255, .22);min-width:0;overflow:visible;position:relative;transform-origin:top center;border:1px solid rgba(184,205,202,.24);border-radius:7px;background:radial-gradient(circle at var(--mouse-x) var(--mouse-y),rgba(118,233,238,.1),transparent 34%),linear-gradient(135deg,#0d1211e0,#080b0ab8);box-shadow:inset 0 1px #ffffff0a,0 20px 60px #00000038;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transition:border-color .3s ease,background .3s ease}.home-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:18px 18px;opacity:.48}.home-card:after{content:"";position:absolute;left:50%;top:-22px;z-index:3;width:28px;height:51px;transform:translate(-50%);pointer-events:none;background:url(/assets/hook-3-optimized.webp) center / contain no-repeat;filter:drop-shadow(0 3px 4px rgba(0,0,0,.72))}.home-card:hover{border-color:#76e9ee94;background:radial-gradient(circle at var(--mouse-x) var(--mouse-y),var(--spotlight-color),transparent 42%),linear-gradient(145deg,#0f2a29e0,#050807db)}.home-card h2,.home-card h3,.home-card p,.home-card ul,.home-card dl,.home-card header,.home-card button,.home-card div,.home-card img,.home-card svg{position:relative}.home-chroma-overlay,.home-chroma-fade{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;pointer-events:none;border-radius:8px;background:#0000}.home-chroma-overlay{mask-image:radial-gradient(circle var(--r) at var(--x) var(--y),transparent 0%,transparent 15%,rgba(0,0,0,.1) 30%,rgba(0,0,0,.22) 45%,rgba(0,0,0,.35) 60%,rgba(0,0,0,.5) 75%,rgba(0,0,0,.68) 88%,#000 100%);-webkit-mask-image:radial-gradient(circle var(--r) at var(--x) var(--y),transparent 0%,transparent 15%,rgba(0,0,0,.1) 30%,rgba(0,0,0,.22) 45%,rgba(0,0,0,.35) 60%,rgba(0,0,0,.5) 75%,rgba(0,0,0,.68) 88%,#000 100%)}.home-chroma-fade{opacity:1;mask-image:radial-gradient(circle var(--r) at var(--x) var(--y),#000 0%,#000 15%,rgba(0,0,0,.9) 30%,rgba(0,0,0,.78) 45%,rgba(0,0,0,.65) 60%,rgba(0,0,0,.5) 75%,rgba(0,0,0,.32) 88%,transparent 100%);-webkit-mask-image:radial-gradient(circle var(--r) at var(--x) var(--y),#000 0%,#000 15%,rgba(0,0,0,.9) 30%,rgba(0,0,0,.78) 45%,rgba(0,0,0,.65) 60%,rgba(0,0,0,.5) 75%,rgba(0,0,0,.32) 88%,transparent 100%);transition:opacity .25s ease}.home-card h2{margin:0;font-size:21px;font-weight:500;letter-spacing:0}.home-card p{color:#e8efeda8;line-height:1.75}.profile-card{height:100%;padding:clamp(18px,2.4vh,26px) 22px;display:flex;flex-direction:column}.avatar-frame{width:clamp(82px,9.3vh,100px);height:clamp(82px,9.3vh,100px);padding:8px;border:1px dashed rgba(218,238,235,.45)}.profile-photo{width:100%;height:100%;display:block;object-fit:cover;filter:none}.pixel-avatar{width:100%;height:100%;position:relative;display:grid;place-items:center;background:repeating-linear-gradient(90deg,#111 0,#111 7px,#161b19 7px,#161b19 14px);image-rendering:pixelated}.pixel-avatar:before{content:"";width:50px;height:58px;background:#cfd7d4;clip-path:polygon(25% 5%,72% 5%,88% 32%,82% 78%,52% 95%,20% 78%,10% 34%);filter:contrast(1.15)}.pixel-avatar span{position:absolute;width:70px;height:76px;border-radius:45% 45% 30% 30%;border:10px solid #0b0d0c}.profile-card h2{margin-top:clamp(16px,2.4vh,26px);font-size:25px;color:#f3fbfa}.profile-card>p{margin:10px 0 clamp(18px,2.6vh,28px);color:#e8efedbf;font-size:12px;line-height:1.8}.profile-card dl{margin:0;padding:clamp(14px,2vh,22px) 0;display:grid;gap:clamp(9px,1.2vh,13px);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.profile-card dl div{display:flex;align-items:center;gap:13px;color:#e6efeca8}.profile-card dd{margin:0;font-size:11px}.profile-skills{margin-top:auto;padding-top:clamp(14px,2.2vh,24px);border-top:1px solid var(--line)}.profile-skills header{display:flex;align-items:center;gap:10px}.profile-skills h3{margin:0;font-size:17px;font-weight:500}.profile-skills>div{margin-top:clamp(10px,1.5vh,16px);display:flex;flex-wrap:wrap;gap:clamp(6px,.8vh,8px)}.profile-skills span{min-height:clamp(24px,2.6vh,28px);padding:7px 10px;display:inline-flex;align-items:center;border:1px solid rgba(184,205,202,.3);border-radius:4px;color:#e8efedbd;font-size:9px}.home-stack{min-height:0;display:grid;grid-template-rows:minmax(0,.88fr) minmax(0,1.12fr);gap:var(--home-gap)}.about-card,.internship-card,.works-card,.hanging-card{padding:var(--home-card-pad)}.about-card header,.internship-card header,.works-card header,.works-card header div{display:flex;align-items:center;gap:15px}.about-card header button,.internship-card header button,.works-card header button,.hanging-card button,.hanging-card>a{margin-left:auto;display:inline-flex;align-items:center;gap:12px;color:#e8efedb8}.about-card header button:hover,.internship-card header button:hover,.works-card header button:hover,.hanging-card button:hover,.hanging-card>a:hover{color:var(--cyan)}.about-card>p{margin:clamp(12px,1.7vh,18px) 0 clamp(16px,2.2vh,24px);font-size:14px;line-height:1.6}.about-card ul{margin:0;padding:clamp(14px,1.8vh,19px) 0 0;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);list-style:none}.about-card li{padding-inline:18px;border-right:1px solid var(--line)}.about-card li:first-child{padding-left:0}.about-card li:last-child{border-right:0}.about-card strong{display:block;font-size:22px;font-weight:500}.about-card span{color:#e8efeda8;font-size:12px}.education-card{display:flex;flex-direction:column}.education-card ul{margin:clamp(10px,1.2vh,14px) 0 0;padding:0;display:grid;grid-template-columns:1fr;gap:clamp(6px,1vh,10px);border-top:0;list-style:none}.education-card li{padding:0 0 clamp(7px,1vh,10px);border-right:0;border-bottom:1px solid rgba(184,205,202,.18)}.education-card li:last-child{padding-bottom:0;border-bottom:0}.education-card li button{width:100%;min-height:70px;padding:0 76px 0 0;display:block;position:relative;color:inherit;text-align:left}.education-card li button:hover,.education-card li button:focus-visible{color:var(--cyan);outline:none}.education-card small{color:var(--cyan);font-size:9px}.education-card .education-school-name{margin-top:5px;display:block;font-size:clamp(17px,1.55vw,20px);font-weight:500;line-height:1.05}.education-card .education-school-logo{position:absolute;top:50%;right:8px;width:50px;height:50px;padding:4px;border-radius:50%;background:#f5f8f7f2;object-fit:contain;box-shadow:0 10px 22px #00000047;transform:translateY(-50%)}.education-card span{margin-top:5px;display:block;color:#e8efeda8;font-size:11px;line-height:1.25}.internship-card ul{margin:clamp(14px,2vh,22px) 0 0;padding:0;display:grid;gap:clamp(10px,1.6vh,18px);list-style:none}.internship-card li{padding-bottom:clamp(10px,1.5vh,16px);border-bottom:1px solid rgba(184,205,202,.18)}.internship-card li:last-child{padding-bottom:0;border-bottom:0}.internship-card li button{width:100%;padding:0;display:block;color:inherit;text-align:left}.internship-card li button:hover,.internship-card li button:focus-visible{color:var(--cyan);outline:none}.internship-card small{color:var(--cyan);font-size:10px}.internship-card strong{margin-top:7px;display:block;font-size:17px;font-weight:500}.internship-card span{margin-top:6px;display:block;color:#e8efeda8;font-size:12px;line-height:1.55}.works-card{display:flex;flex-direction:column}.works-card header{justify-content:space-between;padding-bottom:clamp(12px,1.7vh,18px)}.works-card header>button{min-width:120px;justify-content:flex-end;font-size:12px}.work-list{flex:1;min-height:0;display:grid;grid-template-rows:repeat(4,minmax(0,1fr));border:1px solid rgba(184,205,202,.18);border-radius:6px;overflow:hidden}.work-list button{width:100%;min-height:0;padding:clamp(8px,1.2vh,12px) 20px;display:grid;grid-template-columns:46px minmax(0,1fr) 130px 28px;align-items:center;gap:clamp(12px,1.7vh,18px);border-bottom:1px solid rgba(184,205,202,.18);color:inherit;text-align:left;transition:background .2s}.work-list button:last-child{border-bottom:0}.work-list button:hover,.work-list button:focus-visible{background:#76e9ee0f;outline:none}.work-list button>span{color:#e8efedb8;font-size:16px}.work-list small{color:var(--cyan);font-size:10px}.work-list h3{margin:clamp(4px,.8vh,7px) 0 4px;font-size:17px;font-weight:500;line-height:1.25;letter-spacing:0}.work-list p{margin:0;font-size:12px;line-height:1.32}.work-list img{width:130px;height:clamp(42px,5.2vh,55px);object-fit:cover;border:1px solid rgba(184,205,202,.16);border-radius:4px;filter:none}.home-side{min-height:0;display:grid;grid-template-rows:minmax(0,1fr) minmax(0,1fr);gap:var(--home-gap)}.hanging-card{min-height:0;display:flex;flex-direction:column}.hanging-card h2{margin-top:16px}.hanging-card p{margin:20px 0 24px;font-size:13px}.about-hanging-card p{line-height:1.7}.hanging-card button,.hanging-card>a{width:100%;min-height:40px;margin-top:auto;justify-content:center;border:1px solid rgba(184,205,202,.28);border-radius:4px;font-size:11px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:grid;place-items:center;padding:24px;background:#000000b8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.info-modal{width:min(620px,100%);position:relative;padding:46px;border:1px solid rgba(181,216,211,.3);border-radius:6px;background:var(--panel);box-shadow:0 28px 90px #00000080}.icon-button{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--line);border-radius:3px;background:transparent;cursor:pointer}.icon-button:hover{border-color:var(--cyan);color:var(--cyan)}.modal-close{position:absolute;top:18px;right:18px}.modal-eyebrow{margin:0 0 18px;color:var(--cyan);font-size:10px}.info-modal h2{margin:0;max-width:500px;font-family:Noto Sans SC,sans-serif;font-size:clamp(25px,4vw,38px);font-weight:500;line-height:1.3;letter-spacing:0}.modal-body{margin:24px 0;color:#e7eeecb8;font-family:Noto Sans SC,sans-serif;font-size:15px;line-height:1.9}.modal-meta{display:flex;flex-wrap:wrap;gap:8px;padding-top:18px;border-top:1px solid var(--line)}.modal-meta span{padding:7px 10px;border:1px solid var(--line);border-radius:2px;color:#e6efecad;font-size:10px}.internship-modal{width:min(860px,calc(100vw - 48px));max-height:calc(100vh - 48px);overflow:auto}.internship-modal h2{max-width:100%;font-size:clamp(25px,3.2vw,34px);line-height:1.22}.internship-modal-content{display:grid;gap:18px}.internship-detail-list{display:grid;gap:14px;margin:0 0 18px}.internship-detail-item{padding:16px 18px;border:1px solid rgba(184,205,202,.18);border-radius:5px;background:#0a111075}.internship-detail-item h3{margin:0 0 8px;color:#eff7f5f0;font-family:Noto Sans SC,sans-serif;font-size:16px;font-weight:600;letter-spacing:0}.internship-detail-item p{margin:0;color:#e7eeecb8;font-family:Noto Sans SC,sans-serif;font-size:13px;line-height:1.75}.modal-action,.contact-actions a,.contact-action-button{min-height:42px;margin-top:22px;padding:0 14px;display:inline-flex;align-items:center;gap:9px;border:1px solid rgba(118,233,238,.42);color:var(--cyan);background:transparent;font:inherit;cursor:pointer}.contact-actions{position:relative;display:flex;flex-wrap:wrap;gap:10px}.contact-preview-wrap{position:relative;display:inline-flex}.contact-link-preview{position:absolute;left:50%;bottom:calc(100% + 14px);width:250px;min-height:116px;margin-left:-125px;padding:18px;display:grid;align-content:center;justify-items:center;gap:8px;border:1px solid rgba(118,233,238,.36);border-radius:14px;background:#edf1f0f5;color:#08100f;box-shadow:0 18px 40px #0000004d,0 2px 8px #0000002e;pointer-events:none;z-index:5}.contact-link-preview-icon{width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(8,16,15,.16);border-radius:50%;color:#08100f}.contact-link-preview strong{max-width:100%;font-size:13px;color:#08100f;overflow-wrap:anywhere}.contact-link-preview small{color:#08100f94;font-size:10px}.contact-popover{position:absolute;left:0;top:calc(100% + 12px);z-index:2;min-width:230px;padding:16px;display:grid;gap:12px;border:1px solid rgba(118,233,238,.38);border-radius:4px;background:#060c0cf0;box-shadow:0 18px 52px #00000073}.contact-popover-icon{width:46px;height:46px;display:grid;place-items:center;border:1px solid rgba(118,233,238,.36);color:var(--cyan);background:#76e9ee0f}.contact-copy-value{padding:0;display:grid;gap:4px;border:0;background:transparent;color:#eff7f5e6;font:inherit;text-align:left;cursor:copy}.contact-copy-value small{color:var(--cyan);font-size:9px}.skills-modal{width:min(1180px,calc(100vw - 48px));padding:0;overflow:visible;border:0;background:transparent;box-shadow:none}.skills-modal .modal-close,.skills-modal .modal-eyebrow,.skills-modal h2{display:none}.education-modal{width:min(920px,calc(100vw - 48px));padding:0;overflow:visible;border:0;background:transparent;box-shadow:none}.education-modal .modal-close,.education-modal .modal-eyebrow,.education-modal h2{display:none}.skills-carousel-shell{height:clamp(410px,58vh,520px);margin-top:0}.education-carousel-shell{height:clamp(380px,56vh,500px);margin-top:0}.accordion-gallery{--ag-accent: #76e9ee;--ag-overlay: #050706;--ag-text: #f4fbfa;--ag-gap: 10px;--ag-radius: 12px;--ag-media-size: 320px;width:100%;max-width:100%;display:flex;gap:var(--ag-gap);perspective:1400px;perspective-origin:50% 50%}.ag-panel{min-width:0;min-height:0;flex:1 1 0;display:block;position:relative;overflow:hidden;padding:0;border:1px solid rgba(184,205,202,.34);border-radius:var(--ag-radius);background:#0a0f0e;color:var(--ag-text);cursor:pointer;text-align:left;transform-style:preserve-3d;transform-origin:center center;box-shadow:0 24px 70px #0000006b,inset 0 1px #ffffff1a;will-change:flex-grow,transform}.ag-panel:focus-visible{outline:none;box-shadow:0 0 0 2px var(--ag-accent),0 24px 70px #0000006b,inset 0 1px #ffffff1a}.ag-panel__frame{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;border-radius:inherit}.ag-panel__media{--ag-gray: 1;--ag-dim: .36;position:absolute;top:50%;left:50%;width:var(--ag-media-size);height:100%;filter:grayscale(var(--ag-gray)) saturate(.78) contrast(.95);will-change:transform,filter}.ag-panel__media img{width:100%;height:100%;display:block;object-fit:cover;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.ag-panel__overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(180deg,#0507066b,#0507061f 34%,#050706db),rgba(5,7,6,calc(var(--ag-dim, .36) * .9))}.ag-panel__logo{position:absolute;top:28px;right:22px;z-index:2;width:68px;height:68px;padding:7px;border-radius:50%;background:#f6f9f8f5;object-fit:contain;box-shadow:0 16px 30px #00000057}.ag-panel__label{position:absolute;top:30px;left:22px;right:104px;z-index:2;display:flex;align-items:flex-start;gap:12px;pointer-events:none}.ag-panel__bar{flex:0 0 auto;width:3px;height:62px;border-radius:3px;background:var(--ag-accent);box-shadow:0 0 12px #76e9ee8c}.ag-panel__text{min-width:0;display:grid;gap:7px;color:var(--ag-text);text-shadow:0 4px 18px rgba(0,0,0,.65)}.ag-panel__text small{color:#d8c08b;font-size:14px;line-height:1.2}.ag-panel__text strong{font-size:clamp(24px,3vw,38px);font-weight:700;line-height:1.05;letter-spacing:0}.ag-panel__text em{color:#ecf6f4c2;font-size:12px;font-style:normal;line-height:1.35}.ag-panel__details{position:absolute;left:22px;right:22px;bottom:20px;z-index:2;display:grid;gap:9px;color:#f4fbfadb;text-shadow:0 4px 18px rgba(0,0,0,.65);transition:opacity .24s,transform .24s;pointer-events:none}.ag-panel:not(.ag-panel--active) .ag-panel__details{opacity:0;transform:translateY(8px)}.ag-panel__details>strong{font-size:13px;line-height:1.25;color:#f4fbfaeb}.ag-panel__courses{display:grid;gap:3px;font-family:Noto Sans SC,sans-serif;font-size:11px;line-height:1.28;color:#f4fbfabd}.ag-panel__courses em{font-style:normal}.ag-panel__tags{display:flex;flex-wrap:wrap;gap:6px;padding-top:2px}.ag-panel__tags i{padding:3px 7px;border:1px solid rgba(244,251,250,.24);border-radius:999px;background:#04070657;color:#f4fbfad6;font-size:10px;font-style:normal;line-height:1.2}.magnetic-carousel{width:100%;height:100%;display:flex;align-items:center;justify-content:center;position:relative;overflow:visible}.magnetic-carousel-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1}.magnetic-card{flex:none;min-width:0;padding:0;position:relative;overflow:hidden;border:1px solid rgba(184,205,202,.34);border-radius:8px;background-color:#111;color:#f4fbfa;cursor:pointer;text-align:left;box-shadow:0 24px 70px #0000006b,inset 0 1px #ffffff1a;will-change:width,height,filter,opacity}.magnetic-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:var(--card-bg);background-size:cover;background-position:center;background-repeat:no-repeat;filter:saturate(.45)}.magnetic-card-shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#00000029,#00000075 44%,#000000db)}.magnetic-card strong{position:absolute;left:18px;right:18px;bottom:205px;z-index:1;font-size:clamp(24px,2.3vw,36px);font-weight:700;line-height:1.04;letter-spacing:0;text-shadow:0 4px 18px rgba(0,0,0,.65)}.magnetic-card-list{position:absolute;left:18px;right:18px;bottom:18px;z-index:1;display:grid;gap:4px;color:#ecf6f4db;font-family:Noto Sans SC,sans-serif;font-size:12px;line-height:1.16}.magnetic-card-list em{font-style:normal}.magnetic-card:hover,.magnetic-card:focus-visible{border-color:#76e9eeb8;outline:none}.education-magnetic-card:before{filter:saturate(.72) contrast(.95)}.education-magnetic-card .magnetic-card-shade{background:linear-gradient(180deg,#0000001f,#0000002e 32%,#000000c7)}.magnetic-card-logo{position:absolute;top:178px;right:20px;z-index:2;width:68px;height:68px;padding:7px;border-radius:50%;background:#f6f9f8f5;object-fit:contain;box-shadow:0 16px 30px #00000057}.magnetic-card-meta{position:absolute;left:22px;right:96px;bottom:142px;z-index:1;color:#d8c08b;font-size:14px;line-height:1.2}.education-magnetic-card strong{left:22px;right:22px;bottom:92px;font-size:clamp(24px,2.3vw,34px)}.magnetic-card-subtitle{position:absolute;left:22px;right:22px;bottom:62px;z-index:1;color:#ecf6f4b8;font-size:12px;line-height:1.35}.education-magnetic-card .magnetic-card-list{left:22px;right:22px;bottom:22px;display:flex;flex-wrap:wrap;gap:7px;font-family:Pixelify Sans,Zpix,sans-serif;font-size:11px}.education-magnetic-card .magnetic-card-list em{padding:3px 7px;border:1px solid rgba(236,246,244,.22);border-radius:999px;background:#04070652}.works-page{min-height:100vh;background:#070908;color:#e7ecea}.works-header{height:64px;padding:0 clamp(20px,5vw,72px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);color:#e7efec94;font-size:10px}.back-link{display:flex;align-items:center;gap:9px;color:#e7ecea}.back-link:hover{color:var(--cyan)}.works-intro{padding:clamp(62px,10vw,130px) clamp(20px,8vw,130px) clamp(48px,8vw,96px);border-bottom:1px solid var(--line)}.works-intro>p{margin:0 0 20px;color:var(--cyan);font-size:10px}.works-intro h1{max-width:920px;margin:0;font-family:Noto Sans SC,sans-serif;font-size:clamp(38px,7vw,86px);line-height:1.12;font-weight:500;letter-spacing:0}.works-intro>div{margin-top:36px;display:flex;align-items:center;gap:12px;color:#e8efed9e;font-family:Noto Sans SC,sans-serif;font-size:13px}.works-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.work-card{min-width:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.work-card:nth-child(2n){border-right:0}.work-card>a{height:100%;padding:clamp(20px,4vw,54px);display:grid;grid-template-columns:minmax(160px,.9fr) minmax(210px,1.1fr);gap:clamp(22px,4vw,48px);transition:background .25s}.work-card>a:hover{background:#0c1211}.work-media{aspect-ratio:4 / 3;position:relative;overflow:hidden;background:#101513}.work-media img{width:100%;height:100%;object-fit:cover;filter:saturate(.6) contrast(1.05);transition:transform .5s,filter .5s}.work-card a:hover img{transform:scale(1.035);filter:saturate(.85) contrast(1.05)}.work-media>span{position:absolute;top:12px;left:12px;width:34px;height:34px;display:grid;place-items:center;background:#040706c7;border:1px solid var(--line);font-size:10px}.work-copy{display:flex;min-width:0;flex-direction:column;justify-content:center}.work-copy p{margin:0 0 15px;color:var(--cyan);font-size:10px}.work-copy h2{margin:0 0 17px;font-family:Noto Sans SC,sans-serif;font-size:clamp(20px,2.2vw,32px);line-height:1.35;font-weight:500;letter-spacing:0}.work-copy>span{color:#e6eeeb94;font-family:Noto Sans SC,sans-serif;font-size:13px;line-height:1.7}.work-copy i{margin-top:28px;display:flex;align-items:center;gap:8px;color:#e7efeccc;font-size:10px;font-style:normal}.works-footer{min-height:90px;padding:0 clamp(20px,5vw,72px);display:flex;align-items:center;justify-content:space-between;color:#e6eeeb7a;font-size:9px}.works-footer span,.works-footer a{display:flex;align-items:center;gap:8px}.works-studio-page{min-height:100vh;position:relative;overflow-x:hidden;background:#17191b;color:#e8eeee;font-family:Pixelify Sans,Zpix,sans-serif}.works-studio-page:before,.works-studio-page:after{content:"";position:absolute;top:0;left:0;right:0;height:calc(74px + clamp(500px,66vh,650px));pointer-events:none}.works-studio-page:before{z-index:0;background:url(/assets/works-hero-stars-optimized.webp) center / cover no-repeat;opacity:.8}.works-studio-page:after{z-index:0;background:#0009}.works-studio-page>*{position:relative;z-index:1}.works-studio-header{height:74px;padding:0 clamp(18px,3vw,54px);position:sticky;top:0;z-index:12;display:grid;grid-template-columns:minmax(170px,1fr) auto minmax(210px,1fr);align-items:center;border-bottom:0;background:#17191bdb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#e8eeee;font-size:15px;font-weight:700}.works-brand{width:max-content;color:#e8eeee;text-transform:uppercase}.works-brand:before{content:"DA×WN "}.works-nav{display:flex;align-items:center;justify-content:center;gap:clamp(28px,4vw,54px)}.works-nav a,.works-mail{color:#e8eeee}.works-mail{justify-self:end}.works-nav-flip{position:relative;display:inline-flex;flex-direction:column;align-items:flex-start;gap:5px;line-height:1}.works-nav-flip-text{position:relative;display:block;overflow:hidden}.works-nav-flip-layer{display:block;white-space:nowrap}.works-nav-flip-copy{position:absolute;top:0;right:0;bottom:0;left:0}.works-nav-flip-layer span{display:inline-block}.works-nav-underline{width:100%;height:2px;background:#76e9ee;transform-origin:left center}.works-studio-intro{min-height:clamp(500px,66vh,650px);padding:0 clamp(22px,6vw,120px) clamp(32px,6.5vh,64px);display:flex;flex-direction:column;justify-content:flex-end;border-bottom:0}.works-studio-intro>p{margin:0 0 18px;color:#76e9eec7;font-size:13px;font-weight:700}.works-studio-intro h1{width:calc(100vw - clamp(44px,6vw,108px));max-width:none;margin:0;color:#f0f6f6;font-family:Pixelify Sans,Zpix,sans-serif;font-weight:400;letter-spacing:0;text-align:left}.works-studio-title{display:flex;flex-direction:column;align-items:flex-start;gap:clamp(22px,4.2vh,46px)}.works-studio-title-main{display:block;font-size:clamp(44px,5.05vw,78px);line-height:.92}.works-studio-title-sub{display:flex;width:100%;flex-direction:column;align-items:flex-start;gap:.08em;font-size:clamp(30px,3.65vw,58px);line-height:1.08}.works-studio-title-sub-line{display:block;width:max-content;max-width:100%}.works-title-flip{outline:none}.works-title-flip-word{display:inline-block;white-space:nowrap}.works-title-flip-space{display:inline-block;width:.32em}.works-title-flip-char{position:relative;display:inline-block;height:.98em;line-height:.98em;overflow:hidden;vertical-align:top}.works-title-flip-char span{display:block}.works-title-flip-char span:nth-child(2){position:absolute;top:0;right:0;bottom:0;left:0}.works-studio-line{width:calc(100% - clamp(44px,6vw,108px));height:2px;margin:0 auto;background:#76e9ee3d;transform-origin:left center}.works-list{padding:0 clamp(22px,3vw,54px)}.work-row{min-height:92px;display:grid;grid-template-columns:minmax(82px,.65fr) minmax(240px,1.42fr) minmax(190px,.95fr) minmax(170px,.8fr);align-items:center;gap:clamp(14px,2.4vw,48px);border-bottom:1px solid rgba(232,238,238,.16);color:#e8eeee;font-size:clamp(15px,1.28vw,22px);transition:color .22s ease,background .22s ease,padding-left .22s ease}.work-row:hover,.work-row:focus-visible{color:#fff;background:#76e9ee14;padding-left:14px;outline:none}.work-row span{color:currentColor}.work-row strong{min-width:0;font-size:inherit;font-weight:700;line-height:1.14}.work-hover-preview{width:min(360px,26vw);aspect-ratio:4 / 3;position:fixed;left:0;top:0;z-index:20;pointer-events:none;overflow:hidden;background:#fff;box-shadow:0 18px 60px #00000024}.work-hover-preview img{width:100%;height:100%;display:block;object-fit:cover}.works-studio-footer{min-height:250px;padding:58px clamp(22px,3vw,54px) 38px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:clamp(20px,4vw,72px);color:#e8eeee;font-size:clamp(13px,1.05vw,18px);line-height:1.05}.works-studio-footer p{margin:0}.works-studio-footer a{display:inline;color:#e8eeee;text-decoration:underline;text-underline-offset:3px}.works-brand:before{content:none}.works-nav-button{padding:0;border:0;background:transparent;color:#e8eeee;font:inherit;cursor:pointer}.works-footer-link{display:inline;padding:0;border:0;background:transparent;color:#e8eeee;font:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.resume-magnifier-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:center;padding:clamp(18px,3vw,40px);background:#f2f2f2b8;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.resume-magnifier-modal{width:min(70.7vh,92vw);aspect-ratio:2480 / 3508;position:relative;overflow:hidden;border:0;border-radius:0;background:transparent;box-shadow:none}.resume-magnifier-close{position:absolute;top:14px;right:14px;z-index:2;width:38px;height:38px;display:grid;place-items:center;border:1px solid rgba(0,0,0,.18);border-radius:999px;background:#ffffffb8;color:#090909;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.resume-magnifier-close:hover{background:#fff}.resume-magnifier-canvas{width:100%;height:100%;display:block;cursor:none}.fluid-image-reveal{clip-path:circle(0% at 50% 100%);animation:fluidImageReveal 1.85s cubic-bezier(.2,.82,.18,1) forwards}@keyframes fluidImageReveal{0%{clip-path:circle(0% at 50% 100%)}26%{clip-path:circle(24% at 50% 80%)}52%{clip-path:circle(48% at 38% 58%)}76%{clip-path:circle(78% at 62% 42%)}to{clip-path:circle(142% at 50% 50%)}}@media(prefers-reduced-motion:reduce){.fluid-image-reveal{animation:none;clip-path:none}}@media(max-width:900px){.portfolio-home{padding:0 18px 28px}.home-shell-header{grid-template-columns:160px 1fr 48px}.home-nav{gap:20px;justify-content:flex-end}.home-nav button{font-size:14px}.hero-copy{padding-left:18px}.home-bento{grid-template-columns:1fr 1fr}.profile-card{grid-row:span 2}.works-card{grid-column:1 / -1}.home-side{grid-column:1 / -1;grid-template-columns:1fr 1fr}.works-grid{grid-template-columns:1fr}.work-card,.work-card:nth-child(2n){border-right:0}.works-studio-header{grid-template-columns:1fr;height:auto;padding-block:18px;gap:14px}.works-nav{justify-content:flex-start;gap:22px}.works-mail{justify-self:start}.works-studio-intro{min-height:520px}.works-studio-intro h1{width:100%;margin-left:0;font-size:clamp(34px,10vw,64px)}.work-row{min-height:118px;grid-template-columns:64px 1fr;gap:10px 18px;font-size:20px}.work-row span:nth-of-type(2),.work-row span:nth-of-type(3){font-size:14px;color:#e8eeee9e}.work-hover-preview{display:none}.works-studio-footer{min-height:260px;grid-template-columns:1fr 1fr;align-items:start;font-size:16px}.skills-modal{width:min(100%,calc(100vw - 28px));padding:34px 20px 28px;overflow:hidden}.education-modal{width:min(100%,calc(100vw - 28px));padding:0;overflow:visible}.skills-carousel-shell{height:420px;overflow-x:auto;overflow-y:hidden}.education-carousel-shell{height:430px;overflow-x:hidden;overflow-y:hidden}.magnetic-carousel{width:max-content;min-width:760px;justify-content:flex-start;padding-inline:8px}}@media(min-width:901px)and (max-height:820px){.portfolio-home{--home-hero-h: clamp(170px, 24vh, 198px);--home-bottom-pad: 14px;--home-gap: 10px;--home-card-pad: 18px}.hero-copy{padding-top:18px;padding-bottom:10px}.hero-copy p{margin-bottom:9px}.hero-copy h1{font-size:clamp(22px,2.55vw,32px);line-height:1.36}.hero-copy>span{margin-top:9px;font-size:13px}.profile-card{padding-block:17px}.avatar-frame{width:76px;height:76px;padding:6px}.pixel-avatar:before{width:39px;height:45px}.pixel-avatar span{width:54px;height:58px;border-width:8px}.profile-card h2{margin-top:13px;font-size:23px}.profile-card>p{margin-bottom:14px;font-size:11px;line-height:1.55}.profile-card dl{padding-block:12px;gap:8px}.profile-skills{padding-top:12px}.profile-skills h3{font-size:16px}.profile-skills>div{margin-top:9px;gap:6px}.profile-skills span{min-height:23px;padding:6px 8px;font-size:8px}.home-stack{grid-template-rows:minmax(0,.82fr) minmax(0,1.18fr)}.about-card header,.internship-card header,.works-card header,.works-card header div{gap:12px}.about-card>p{margin:10px 0 11px;font-size:12px;line-height:1.38}.about-card ul{padding-top:10px}.about-card strong{font-size:18px}.about-card span{font-size:11px}.education-card ul{margin-top:8px;gap:6px}.education-card li{padding-bottom:6px}.education-card li button{min-height:64px;padding-right:70px}.education-card .education-school-name{margin-top:4px;font-size:clamp(16px,1.45vw,19px)}.education-card .education-school-logo{right:7px;width:46px;height:46px}.education-card span{margin-top:4px;font-size:10px;line-height:1.22}.internship-card ul{margin-top:11px;gap:8px}.internship-card li{padding-bottom:8px}.internship-card strong{margin-top:4px;font-size:15px}.internship-card span{margin-top:4px;font-size:11px;line-height:1.35}.works-card header{padding-bottom:10px}.work-list button{padding:6px 14px;grid-template-columns:38px minmax(0,1fr) 110px 24px;gap:10px}.work-list h3{margin:3px 0 2px;font-size:15px;line-height:1.16}.work-list p{font-size:11px;line-height:1.22}.work-list img{width:110px;height:40px}.hanging-card h2{margin-top:12px}.hanging-card p{margin:14px 0 16px;font-size:12px;line-height:1.5}}@media(max-width:620px){.opening-media video{object-position:center}.portfolio-home{padding-inline:14px}.portfolio-home:after{height:260px;background-size:cover;background-position:center top}.home-shell-header{height:auto;min-height:72px;padding:14px 0;grid-template-columns:1fr 44px;gap:10px}.brand-mark span{font-size:16px}.home-nav{grid-column:1 / -1;height:auto;justify-content:space-between;order:3;gap:0;border-top:1px solid rgba(184,205,202,.14)}.home-nav button{min-height:42px;padding-inline:0;font-size:13px}.home-hero{min-height:260px}.hero-copy{padding:34px 0 24px}.hero-copy h1{font-size:21px;line-height:1.7}.home-bento,.home-side{grid-template-columns:1fr}.profile-card,.works-card,.home-side{grid-column:auto;grid-row:auto}.home-stack{grid-template-rows:auto}.about-card,.internship-card,.works-card,.hanging-card,.profile-card{padding:22px}.about-card ul{grid-template-columns:1fr;gap:12px}.about-card li{padding:0;border-right:0}.education-carousel-shell{height:520px}.accordion-gallery{flex-direction:column;perspective:none}.ag-panel{min-height:0;transform:none!important}.ag-panel__media{width:100%;height:var(--ag-media-size)}.work-list button{min-height:128px;padding:16px;grid-template-columns:34px 1fr 22px}.work-list img{grid-column:2 / 3;width:100%;height:72px}.info-modal{padding:40px 24px 28px}.work-card>a{grid-template-columns:1fr}.works-header>span{display:none}.works-intro>div{align-items:flex-start;line-height:1.7}.works-footer{padding-block:26px;align-items:flex-start;flex-direction:column;gap:15px}.works-studio-footer{display:grid;grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
