*{box-sizing:border-box;margin:0;padding:0}:root{--red: #dc2626;--blue: #0088d1;--ink: #0a0a0a;--paper: #f5f5f2;--neo-border: #0a0a0a;--neo-line: #ffffff;--neo-yellow: #ffd02f;--neo-blue: #0084d1;--diamond-size: 9.5em}html,body,#root{height:100%;min-height:100dvh}body{background:#0b0b0e;color:var(--paper);font-family:Space Grotesk,system-ui,sans-serif;overflow:hidden;-webkit-font-smoothing:antialiased}#bg-video{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;z-index:-2;filter:brightness(.85) saturate(1.05) contrast(1.02)}.vignette{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background:radial-gradient(120% 90% at 50% 10%,transparent 55%,rgba(4,5,9,.5) 100%),linear-gradient(to bottom,#0405091f,#0405094d)}#menu{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;display:flex;flex-direction:column;padding:clamp(12px,2.5vw,36px);overflow:hidden;opacity:1}#menu.menu-hidden{opacity:0;pointer-events:none}#menu.menu-visible{opacity:1;transform:scale(1);filter:blur(0);pointer-events:auto}.menu-head{display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.name-banner{display:inline-flex;flex-direction:column;align-items:flex-start}.name-strip{display:inline-flex;align-items:center;background:#fff;padding:.12em .7em .16em;box-shadow:4px 4px #0006}.strip-1{transform:rotate(-2deg)}.strip-2{transform:rotate(1deg);margin-left:clamp(14px,2.5vw,26px);margin-top:-4px}.name-text{font-family:Anton,sans-serif;font-size:clamp(1.38rem,3.1vw,2.2rem);line-height:1.15;text-transform:uppercase;color:#000;letter-spacing:2px;transform:scaleX(1.1);transform-origin:left center;white-space:nowrap}.chip{display:inline-block;border-radius:4px;padding:0 4px}.chip-blue{background:#0084d1;color:#fff}.chip-black{background:#000;color:#fff}.badge-tilt{transform:rotate(3.5deg);transition:transform .3s cubic-bezier(.34,1.56,.64,1);flex-shrink:0}.badge-tilt:hover{transform:rotate(2deg) scale(1.04)}.student-badge{position:relative;display:inline-flex;align-items:center;font-size:clamp(3.5px,.42vw,6.8px);font-family:Poppins,Segoe UI,Arial,sans-serif}.student-badge__ribbon{position:relative;display:flex;flex-direction:column;justify-content:center;height:7.4em;min-width:27em;padding:.3em 2em .3em 7.5em;margin-left:calc(var(--diamond-size) / -2.1);background:var(--neo-yellow);border:.45em solid var(--neo-line);box-shadow:.7em .7em 0 var(--neo-border)}.student-badge__title{color:var(--neo-border);font-weight:700;font-size:1.35em;letter-spacing:.03em;line-height:1.15;margin:0;text-transform:uppercase}.student-badge__subtitle{color:#0a0a0ab8;font-weight:700;font-size:.85em;letter-spacing:.02em;text-transform:uppercase;margin:.4em 0 0}.student-badge__diamond{position:relative;z-index:2;width:calc(var(--diamond-size) * .82);height:calc(var(--diamond-size) * .82);flex:0 0 auto;transform:rotate(45deg);background:var(--neo-blue);border:.45em solid var(--neo-line);box-shadow:.55em .55em 0 var(--neo-border);overflow:hidden}.student-badge__diamond-inner{position:absolute;top:0;right:0;bottom:0;left:0;transform:rotate(-45deg) scale(1.42);overflow:hidden;background:#222}.student-badge__diamond-inner img{width:100%;height:100%;object-fit:cover;display:block}.mission-wrap{position:relative;padding:0;margin-top:clamp(24px,4vh,46px);margin-left:clamp(12px,2.2vw,34px);width:min(430px,80vw)}.mission-box{position:relative;background:#fff;color:var(--ink);border:4px solid var(--ink);box-shadow:7px 7px #000000d9;padding:clamp(12px,2vw,22px)}.mission-tag{position:absolute;top:-13px;right:-11px;z-index:10;background:var(--red);color:#fff;font-family:Oswald,sans-serif;font-size:clamp(8px,.85vw,11px);font-weight:700;letter-spacing:.15em;padding:.45em 1.5em;border:3px solid var(--ink);transform:rotate(5deg);box-shadow:3px 3px 0 var(--ink)}.mission-title{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-start;margin-bottom:clamp(8px,1.4vh,14px)}.mission-word{font-family:Anton,sans-serif;font-size:clamp(1.15rem,2.5vw,1.9rem);line-height:1;text-transform:uppercase;display:inline-block;border:3px solid var(--ink);padding:.14em .45em}.mission-word.op{background:var(--red);color:#fff;transform:rotate(-2deg);box-shadow:3px 3px 0 var(--ink)}.mission-word.vg{background:var(--blue);color:#fff;transform:rotate(1.5deg);box-shadow:3px 3px 0 var(--ink)}.mission-word.yl{background:#ffd02f;color:var(--ink);transform:rotate(1.5deg);box-shadow:3px 3px 0 var(--ink)}.mission-word.pu{background:#8b5cf6;color:#fff;transform:rotate(1.5deg);box-shadow:3px 3px 0 var(--ink)}.mission-text{font-family:Oswald,sans-serif;font-weight:500;font-size:clamp(.66rem,1.4vh,.8rem);line-height:1.5;background:#0a0a0a0f;border-left:4px solid var(--red);padding:10px 12px;max-width:62ch;white-space:pre-line}.mission-deck{display:grid;margin-bottom:clamp(56px,9vh,80px)}.mission-deck>.mission-box{grid-area:1 / 1;cursor:pointer;transition:transform .45s cubic-bezier(.34,1.4,.64,1),filter .3s ease}.mission-deck>.mission-box:focus-visible{outline:3px dashed var(--red);outline-offset:4px}.mission-pos-0{transform:rotate(-1deg);z-index:3}.mission-pos-1{transform:translate(34px,26px) rotate(2.5deg);z-index:2;filter:brightness(.93) saturate(.9)}.mission-pos-2{transform:translate(-32px,52px) rotate(-4.5deg);z-index:1;filter:brightness(.85) saturate(.8)}.mission-pos-1:hover{transform:translate(34px,18px) rotate(2deg);filter:brightness(1) saturate(1)}.mission-pos-2:hover{transform:translate(-26px,44px) rotate(-3.5deg);filter:brightness(1) saturate(1)}.mission-hint{margin-top:clamp(8px,1.6vh,14px);transform:translateY(clamp(10px,1.8vh,20px));font-family:Oswald,sans-serif;font-size:clamp(.52rem,.74vw,.62rem);font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#ffffff8c;text-shadow:0 2px 8px rgba(0,0,0,.8);-webkit-user-select:none;user-select:none}.keyhints{display:flex;justify-content:center;align-items:center;gap:clamp(10px,2vw,24px);margin-top:clamp(12px,2.2vh,24px);margin-bottom:clamp(56px,10vh,112px)}.keyhint{display:flex;align-items:center;gap:6px;background:#fff;color:#000;border:2px solid #000;transform:skew(-12deg);padding:.3em .85em;font-family:Oswald,sans-serif;font-size:clamp(8px,.82vw,10px);font-weight:700;letter-spacing:.15em;text-transform:uppercase;box-shadow:3px 3px #fff}.keyhint-key{background:#000;color:#fff;padding:1px 5px}.menu-list{margin-top:auto;margin-bottom:clamp(2px,.8vh,10px);transform:translateY(clamp(20px,3.6vh,44px));display:flex;flex-direction:column;width:min(92vw,620px)}.menu-item{position:relative}.menu-link{display:flex;align-items:center;gap:clamp(12px,2vw,20px);text-decoration:none;color:#fff;padding-block:clamp(2px,.6vh,6px)}.menu-link:focus-visible{outline:3px dashed var(--red);outline-offset:4px}.menu-slot{position:relative;flex:1;height:clamp(42px,7vh,68px);display:flex;align-items:center;overflow:visible}.menu-label{font-family:Archivo Black,sans-serif;font-size:clamp(1.25rem,3.7vw,2.5rem);line-height:1;text-transform:uppercase;white-space:nowrap;color:#fff;text-shadow:0 4px 18px rgba(0,0,0,.55);transition:opacity .22s ease,transform .3s cubic-bezier(.34,1.56,.64,1)}.menu-banner{position:absolute;left:0;top:50%;width:min(280px,35vw);pointer-events:none;opacity:0;transform:translateY(-50%) scale(.55) rotate(8deg);transform-origin:left center;transition:opacity .24s ease,transform .4s cubic-bezier(.2,1.6,.3,1);will-change:transform}.menu-banner svg{display:block;width:100%;height:auto;filter:drop-shadow(0 16px 26px rgba(0,0,0,.5))}.menu-item:hover .menu-label,.menu-item.active .menu-label{opacity:0;transform:translate(22px) rotate(1.5deg)}.menu-item:hover .menu-banner,.menu-item.active .menu-banner{opacity:1;transform:translateY(-50%) scale(1) rotate(-2.5deg)}.skillbars-wrap{position:absolute;top:clamp(160px,20vw,320px);left:clamp(20px,4vw,50px);width:min(910px,94vw);z-index:2}.skillbars-scroll{max-height:364px;overflow-y:auto;overflow-x:hidden;scrollbar-width:none}.skillbars-scroll::-webkit-scrollbar{display:none}.skillbar-row{margin-bottom:17px}.skillbar-label{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:6px;padding:0 2px}.skillbar-name{display:flex;align-items:center;gap:6px;font-family:Oswald,Arial Narrow,Arial,sans-serif;font-size:clamp(10px,.95vw,11.5px);font-weight:800;font-style:italic;letter-spacing:.5px;color:var(--paper);text-transform:uppercase}.skillbar-diamond{width:8px;height:8px;background:var(--red);transform:rotate(45deg);flex-shrink:0}.skillbar-percent{font-family:Courier New,monospace;font-weight:700;font-size:clamp(10.5px,.95vw,12px);color:var(--red);letter-spacing:1px}.skillbar-percent:after{content:"%";font-size:10px;color:#6b6b6b;margin-left:2px}.skillbar-shell{position:relative;height:14px;background:#262626;clip-path:polygon(0 0,100% 0,calc(100% - 10px) 100%,0 100%);overflow:visible;border-left:3px solid var(--paper)}.skillbar-fill{position:relative;height:100%;width:0%;background:linear-gradient(90deg,#d6d6d6,#fff 65%,#fff);transition:width 1.1s cubic-bezier(.22,.9,.28,1);box-shadow:0 0 8px 1px #ffffffa6,0 0 16px 3px #e3001666}.skillbar-fill:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:repeating-linear-gradient(-45deg,rgba(150,20,25,.1) 0px,rgba(150,20,25,.1) 2px,transparent 2px,transparent 12px)}.skillbar-shine{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.skillbar-shine:before{content:"";position:absolute;top:-10px;height:100%;width:70%;left:-70%;background:linear-gradient(90deg,transparent,rgba(227,0,22,.25) 20%,rgba(227,0,22,.9) 50%,rgba(227,0,22,.25) 80%,transparent);filter:blur(1px);animation:sb-shine-travel 1.8s linear infinite}@keyframes sb-shine-travel{0%{left:-70%}to{left:100%}}.skillbar-shell.maxed .skillbar-fill{background:linear-gradient(90deg,#ffe9a8,#fff8e0 60%,#fff);box-shadow:0 0 12px 2px #ffd25ab3,0 0 22px 5px #ffa01e66}.skillbar-shell.maxed .skillbar-shine:before{animation-duration:1.1s}.skills-page{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;background:#000;opacity:1;transform:scale(1);filter:blur(0);pointer-events:none}.skills-page.skills-visible{opacity:1;transform:scale(1);filter:blur(0);pointer-events:auto}.skills-page.skills-hidden{opacity:1;transform:scale(1);filter:blur(0);pointer-events:none}.skills-page:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:1;pointer-events:none}.skills-bg-video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.skills-logo{position:absolute;top:clamp(-28px,-2.8vw,-18px);left:clamp(16px,3vw,40px);width:clamp(140px,19vw,285px);height:auto;filter:drop-shadow(0 4px 20px rgba(0,0,0,.6));z-index:2}.skills-visible .skills-logo,.skills-visible .skillbars-wrap,.skills-visible .skills-bottom{animation:none}.skills-bottom{position:absolute;bottom:clamp(6px,1.4vw,20px);left:clamp(20px,4vw,50px);display:flex;gap:10px;align-items:center;z-index:2}.skills-back,.skills-scroll-btn{display:flex;align-items:center;gap:6px;background:#fff;color:#000;border:2px solid #000;transform:skew(-12deg);padding:.28em .75em;font-family:Oswald,sans-serif;font-size:clamp(7.5px,.78vw,9.5px);font-weight:700;letter-spacing:.12em;text-transform:uppercase;box-shadow:4px 4px #fff;cursor:pointer;-webkit-user-select:none;user-select:none;z-index:2;transition:transform .22s cubic-bezier(.34,1.56,.64,1),background .22s,color .22s}.skills-back:hover,.skills-scroll-btn:hover{transform:skew(-12deg) translateY(-2px);background:var(--red);color:#fff;border-color:#fff}.skills-back:active,.skills-scroll-btn:active{transform:skew(-12deg) translateY(1px);box-shadow:2px 2px #0000004d}.about-page{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;background:#000;opacity:1;transform:scale(1);filter:blur(0);pointer-events:none}.about-page.about-visible{opacity:1;transform:scale(1);filter:blur(0);pointer-events:auto}.about-page.about-hidden{opacity:1;transform:scale(1);filter:blur(0);pointer-events:none}.about-page:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(120% 90% at 50% 10%,transparent 60%,rgba(4,5,9,.32) 100%),linear-gradient(to top,#00000040,#0000 25%);z-index:1;pointer-events:none}.about-bg{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#0b0b0e}.about-bg:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.about-bg-layer{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);min-width:100%;min-height:100%;width:100%;height:100%;object-fit:cover;object-position:center;-webkit-user-select:none;user-select:none;pointer-events:none}.about-bg-layer--reveal{--rx: -999px;--ry: -999px;--rr: 0px;-webkit-mask-image:radial-gradient(circle var(--rr) at var(--rx) var(--ry),#000 0%,#000 62%,transparent 100%);mask-image:radial-gradient(circle var(--rr) at var(--rx) var(--ry),#000 0%,#000 62%,transparent 100%)}.about-box{position:absolute;z-index:2;left:8.5%;top:15%;width:min(560px,46%)}.about-box-tag{position:relative;z-index:3;display:inline-flex;align-items:center;gap:.6em;background:var(--red);color:#fff;font-family:Oswald,sans-serif;font-weight:700;font-size:clamp(.5rem,.75vw,.62rem);letter-spacing:.22em;text-transform:uppercase;padding:.4em 1.1em .32em;border:2px solid #fff;transform:rotate(-2.5deg) skew(-8deg);box-shadow:3px 3px #000000bf;margin-left:16px;margin-bottom:-9px}.about-box-tag-diamond{width:.5em;height:.5em;background:#fff;transform:rotate(45deg);flex-shrink:0}.about-box-card{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;border:3px solid #fff;background:linear-gradient(160deg,#121216,#1a1418);pointer-events:none;clip-path:polygon(0 3%,2% 0,98.5% 1.2%,100% 4%,99.4% 96.5%,97.5% 100%,1.8% 98.6%,0 95.5%)}.about-box-card--mid{transform:translate(15px,14px) rotate(1.9deg);box-shadow:10px 10px #dc262680}.about-box-card--back{transform:translate(-14px,28px) rotate(-3.6deg);background:linear-gradient(160deg,#0a0a0c,#100c10);border-color:#ffffffeb;box-shadow:10px 10px #dc262640,0 22px 50px #000000b3}.about-box-panel{position:relative;z-index:2;background:linear-gradient(160deg,#0a0a0cf0,#100d0fe0);border:3px solid #fff;box-shadow:8px 8px #dc2626e6,0 18px 44px #000000a6;padding:clamp(14px,1.6vw,24px) clamp(16px,1.9vw,28px);clip-path:polygon(0 3%,2% 0,98.5% 1.2%,100% 4%,99.4% 96.5%,97.5% 100%,1.8% 98.6%,0 95.5%);transform:rotate(-2.2deg)}.about-box-head{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 12px;margin-bottom:.55em;padding-bottom:.5em;border-bottom:2px dashed rgba(255,255,255,.28)}.about-box-name{font-family:Anton,sans-serif;font-size:clamp(1.05rem,1.9vw,1.55rem);line-height:1;letter-spacing:.06em;text-transform:uppercase;color:#fff;text-shadow:2px 2px 0 rgba(220,38,38,.9)}.about-box-alias{font-family:Oswald,sans-serif;font-weight:700;font-size:clamp(.55rem,.8vw,.68rem);letter-spacing:.24em;text-transform:uppercase;color:#ffd02f;background:#ffd02f24;border:1px solid rgba(255,208,47,.55);padding:.18em .7em;transform:skew(-12deg)}.about-box-bio{font-family:Space Grotesk,sans-serif;font-weight:500;font-style:italic;font-size:clamp(.72rem,1.02vw,.9rem);line-height:1.58;color:#ffffffeb;white-space:pre-line;margin-bottom:.9em}.about-box-facts{list-style:none;margin:0;padding-top:.7em;border-top:2px solid rgba(255,255,255,.22);display:flex;flex-wrap:wrap;gap:7px 10px}.about-box-fact{display:flex;align-items:center;gap:8px;min-width:0}.about-box-fact:nth-child(2n){transform:rotate(1.1deg)}.about-box-fact:nth-child(odd){transform:rotate(-1.1deg)}.about-box-fact-label{font-family:Oswald,sans-serif;font-weight:700;font-size:clamp(.42rem,.62vw,.54rem);letter-spacing:.12em;text-transform:uppercase;color:#0a0a0a;background:#fff;padding:.22em .6em;transform:skew(-12deg);box-shadow:3px 3px #dc2626d9}.about-box-fact-value{font-family:Space Grotesk,sans-serif;font-weight:700;font-style:italic;font-size:clamp(.58rem,.82vw,.7rem);color:#fff;white-space:nowrap;text-shadow:0 2px 6px rgba(0,0,0,.8)}.about-bottom{position:absolute;bottom:clamp(16px,3vw,40px);left:clamp(16px,3vw,40px);display:flex;gap:10px;align-items:center;z-index:2;animation:none}.about-back{display:flex;align-items:center;gap:6px;background:#fff;color:#000;border:2px solid #000;transform:skew(-12deg);padding:.3em .85em;font-family:Oswald,sans-serif;font-size:clamp(8px,.85vw,11px);font-weight:700;letter-spacing:.15em;text-transform:uppercase;box-shadow:3px 3px #fff;cursor:pointer;-webkit-user-select:none;user-select:none;z-index:2;transition:transform .22s cubic-bezier(.34,1.56,.64,1),background .22s,color .22s}.about-back:hover{transform:skew(-12deg) translateY(-2px);background:var(--red, #dc2626);color:#fff;border-color:#fff}.about-back:active{transform:skew(-12deg) translateY(1px);box-shadow:2px 2px #0000004d}.projects-page{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;background:#000;opacity:1;transform:scale(1);filter:blur(0);pointer-events:none;overflow:hidden}.projects-page.projects-visible{opacity:1;transform:scale(1);filter:blur(0);pointer-events:auto}.projects-page.projects-hidden{opacity:1;transform:scale(1);filter:blur(0);pointer-events:none}.projects-bg-video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;z-index:0;background:#0b0b0e}.projects-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(120% 90% at 50% 10%,transparent 55%,rgba(4,5,9,.45) 100%),linear-gradient(to bottom,#0405092e,#04050961);z-index:1;pointer-events:none}.projects-banner{position:absolute;top:-10px;right:-10px;width:clamp(135px,19vw,285px);height:auto;z-index:4;filter:drop-shadow(0 8px 22px rgba(0,0,0,.55));pointer-events:none;transform:rotate(1.2deg);transform-origin:top right;opacity:1;display:block}.projects-visible .projects-banner{animation:none}.projects-header{position:absolute;top:clamp(14px,2vw,26px);left:clamp(16px,3vw,36px);z-index:3}.projects-heading{display:flex;gap:8px;line-height:1}.projects-heading span{font-family:Anton,sans-serif;font-size:clamp(1.6rem,4vw,2.8rem);text-transform:uppercase;padding:.06em .32em;border:3px solid #000;display:inline-block}.ph-white{background:#fff;color:#0a0a0a;transform:rotate(-2deg);clip-path:polygon(3% 0,100% 2%,95% 100%,0 96%);font-style:italic}.ph-red{background:var(--blue);color:#fff;transform:rotate(1.5deg);box-shadow:4px 4px #000;font-style:italic}.projects-visible .projects-header{animation:none}.projects-scroll{position:absolute;z-index:2;top:clamp(88px,10vh,120px);left:clamp(14px,2.5vw,36px);right:clamp(14px,2.5vw,36px);bottom:clamp(64px,8vh,78px);overflow-y:auto;overflow-x:hidden;padding:16px 10px 18px 4px;scrollbar-width:thin;scrollbar-color:var(--red) rgba(255,255,255,.12)}.projects-scroll::-webkit-scrollbar{width:6px}.projects-scroll::-webkit-scrollbar-track{background:#ffffff14;border-radius:999px}.projects-scroll::-webkit-scrollbar-thumb{background:var(--red);border-radius:999px}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(380px,100%),1fr));gap:clamp(18px,2.2vw,26px);align-items:start;max-width:1280px;margin:0 auto}.project-card{position:relative;background:#fff;color:var(--ink);border:4px solid var(--ink);box-shadow:1px 1px 0 var(--ink),2px 2px 0 var(--ink),3px 3px 0 var(--ink),4px 4px 0 var(--ink),5px 5px 0 var(--ink),6px 6px 0 var(--ink),7px 7px 0 var(--ink),8px 8px 0 var(--ink),9px 9px 0 var(--ink),10px 10px 0 var(--ink),14px 14px 22px #0000006b,22px 22px 36px #00000038;padding:0;overflow:visible;clip-path:polygon(4.5% 0,100% 0,95.5% 100%,0 100%);display:flex;flex-direction:column;min-height:218px;height:236px;will-change:transform;transition:transform .42s cubic-bezier(.34,1.45,.64,1),box-shadow .42s cubic-bezier(.34,1.45,.64,1),filter .3s ease;transform-style:preserve-3d;isolation:isolate}.project-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--ink);clip-path:polygon(4.5% 0,100% 0,95.5% 100%,0 100%);transform:translate(10px,10px);z-index:-1;opacity:1;pointer-events:none;transition:transform .42s cubic-bezier(.34,1.45,.64,1);filter:blur(.4px)}.project-card:hover{transform:skew(-6deg) rotate(var(--tilt)) translateY(-14px) scale(1.04);box-shadow:1px 1px 0 var(--ink),2px 2px 0 var(--ink),3px 3px 0 var(--ink),4px 4px 0 var(--ink),5px 5px 0 var(--ink),6px 6px 0 var(--ink),7px 7px 0 var(--ink),8px 8px 0 var(--ink),9px 9px 0 var(--ink),10px 10px 0 var(--ink),12px 12px 0 var(--ink),20px 26px 32px #0000006b,30px 34px 44px #0000002e;filter:brightness(1.04)}.project-card:hover:before{transform:translate(13px,18px)}.project-card:hover .pc-inner{transform:translateY(-3px)}.project-card:active{transform:skew(-6deg) rotate(var(--tilt)) translateY(-4px) scale(1.005);box-shadow:1px 1px 0 var(--ink),2px 2px 0 var(--ink),3px 3px 0 var(--ink),4px 4px 0 var(--ink),8px 12px 16px #00000047}.pc-tilt-l{--tilt: -1.6deg;transform:skew(-6deg) rotate(var(--tilt))}.pc-tilt-r{--tilt: 1.2deg;transform:skew(-6deg) rotate(var(--tilt))}.pc-inner{transform:none;display:flex;flex-direction:column;min-height:100%;padding:0 10px 0 14px;transition:transform .42s cubic-bezier(.34,1.45,.64,1)}.pc-red .pc-title{background:var(--red);color:#fff}.pc-blue .pc-title{background:var(--blue);color:#fff}.pc-yellow .pc-title{background:#ffd02f;color:#0a0a0a}.pc-red .pc-line{background:var(--red)}.pc-blue .pc-line{background:var(--blue)}.pc-yellow .pc-line{background:#ffd02f}.pc-top{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 14px 0}.pc-title{font-family:Anton,sans-serif;font-size:clamp(.95rem,1.6vw,1.2rem);line-height:1;text-transform:uppercase;padding:.32em .6em;border:3px solid var(--ink);transform:rotate(-1deg);box-shadow:3px 3px 0 var(--ink);letter-spacing:.02em;max-width:74%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pc-num{font-family:Oswald,sans-serif;font-weight:700;font-size:.78rem;letter-spacing:.12em;color:#0a0a0a8c;border:2px solid var(--ink);padding:2px 7px;transform:skew(-12deg);background:#f5f5f2}.pc-line{height:4px;margin:12px 14px 0;transform:skew(-12deg);opacity:.95}.pc-desc{font-family:Archivo Black,Anton,sans-serif;font-size:clamp(.78rem,.95vw,.88rem);line-height:1.55;color:#fff;font-weight:400;padding:14px 16px 12px;flex:1;overflow:hidden;text-shadow:1px 1px 0 #000,2px 2px 0 #000,3px 3px 0 #000,4px 4px 0 rgba(0,0,0,.35),6px 6px 12px rgba(0,0,0,.45);letter-spacing:.02em}.pc-github{align-self:flex-end;margin:8px 14px 14px;display:inline-flex;align-items:center;gap:5px;font-family:Oswald,sans-serif;font-size:clamp(7.5px,.78vw,9.5px);font-weight:700;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;background:#fff;color:#000;border:2px solid #000;padding:.28em .75em;transform:skew(-12deg);box-shadow:4px 4px #fff;cursor:pointer;-webkit-user-select:none;user-select:none;transition:transform .22s cubic-bezier(.34,1.56,.64,1),background .22s,color .22s,border-color .22s,box-shadow .22s}.pc-github:hover{transform:skew(-12deg) translateY(-2px);background:var(--red);border-color:#fff;color:#fff;box-shadow:4px 4px #000}.pc-github:active{transform:skew(-12deg) translateY(1px);box-shadow:2px 2px #00000059}.pc-red .pc-github:hover{background:var(--red);border-color:#fff;color:#fff}.pc-blue .pc-github:hover{background:var(--blue);border-color:#fff;color:#fff}.pc-yellow .pc-github:hover{background:#ffd02f;border-color:#000;color:#000;box-shadow:4px 4px #000}.pc-github-arrow{background:#000;color:#fff;padding:1px 5px;font-size:1em;line-height:1}.pc-stamp{position:absolute;top:8px;right:-10px;font-family:Archivo Black,sans-serif;font-size:.55rem;letter-spacing:.14em;color:#0a0a0a14;transform:rotate(18deg);pointer-events:none;-webkit-user-select:none;user-select:none}.projects-visible .project-card,.projects-visible .project-card:nth-child(1),.projects-visible .project-card:nth-child(2),.projects-visible .project-card:nth-child(3),.projects-visible .project-card:nth-child(4),.projects-visible .project-card:nth-child(5),.projects-visible .project-card:nth-child(6){animation:none}.projects-bottom{position:absolute;bottom:clamp(12px,2vw,18px);left:clamp(14px,2.5vw,36px);right:clamp(14px,2.5vw,36px);display:flex;align-items:center;gap:14px;z-index:3;flex-wrap:wrap}.projects-back{display:inline-flex;align-items:center;gap:6px;background:#fff;color:#000;border:2px solid #000;transform:skew(-12deg);padding:.3em .85em;font-family:Oswald,sans-serif;font-size:clamp(8px,.85vw,11px);font-weight:700;letter-spacing:.15em;text-transform:uppercase;box-shadow:4px 4px #fff;cursor:pointer;transition:transform .22s cubic-bezier(.34,1.56,.64,1),background .22s,color .22s}.projects-back:hover{transform:skew(-12deg) translateY(-2px);background:var(--red);color:#fff;border-color:#fff}.projects-back:active{transform:skew(-12deg) translateY(1px)}.projects-scroll-hint{font-family:Oswald,sans-serif;font-size:clamp(.58rem,.75vw,.68rem);letter-spacing:.12em;text-transform:uppercase;color:#ffffffb8;text-shadow:0 2px 8px rgba(0,0,0,.7)}.projects-visible .projects-bottom{animation:none}.contact-page{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;overflow:hidden}.contact-bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;z-index:0;filter:brightness(.9) saturate(1.05)}.contact-shade{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:radial-gradient(120% 90% at 50% 10%,transparent 50%,rgba(4,5,9,.55) 100%),linear-gradient(to bottom,#04050940,#04050973)}.contact-header{position:absolute;top:clamp(14px,2vw,26px);left:clamp(16px,3vw,36px);z-index:3}.contact-heading{display:flex;gap:8px;line-height:1}.contact-heading span{font-family:Anton,sans-serif;font-size:clamp(1.6rem,4vw,2.8rem);text-transform:uppercase;padding:.06em .32em;border:3px solid #000;display:inline-block}.ch-blue{background:var(--blue);color:#fff;transform:rotate(1.5deg);box-shadow:4px 4px #000;font-style:italic}.contact-scroll{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(14px,3vh,30px);padding:clamp(70px,12vh,110px) clamp(14px,5vw,60px) clamp(60px,10vh,90px);overflow-y:auto}.contact-lede{font-family:Archivo Black,Anton,sans-serif;font-size:clamp(.85rem,1.6vw,1.15rem);letter-spacing:.04em;color:#fff;text-align:center;max-width:620px;text-shadow:2px 2px 0 #000,4px 4px 0 rgba(0,0,0,.4);opacity:0;transform:translateY(20px) skew(-6deg)}.contact-lede.revealed{animation:cc-lede-in .55s cubic-bezier(.34,1.45,.64,1) forwards}@keyframes cc-lede-in{0%{opacity:0;transform:translateY(20px) skew(-6deg)}60%{opacity:1;transform:translateY(-4px) skew(-2deg)}to{opacity:1;transform:translateY(0) skew(0)}}.contact-lede-star{color:#ffd02f;display:inline-block;transform:rotate(12deg)}.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,300px));justify-content:center;gap:clamp(12px,2vw,22px);width:100%;max-width:980px}.contact-card{position:relative;display:flex;align-items:center;gap:12px;padding:14px 16px;background:#fff;color:var(--ink);border:3px solid var(--ink);text-decoration:none;transform:skew(-6deg) rotate(var(--tilt, -1deg)) translateY(18px);opacity:0;transition:transform .42s cubic-bezier(.34,1.45,.64,1),opacity .42s ease,box-shadow .22s,background .22s,color .22s;box-shadow:6px 7px #0000008c;cursor:pointer}.contact-card.revealed{animation:cc-in .5s cubic-bezier(.34,1.45,.64,1) var(--cc-delay, 0ms) forwards}@keyframes cc-in{0%{opacity:0;transform:skew(-6deg) rotate(var(--tilt, -1deg)) translateY(18px)}to{opacity:1;transform:skew(-6deg) rotate(var(--tilt, -1deg)) translateY(0)}}.contact-card:nth-child(odd){--tilt: -1.4deg}.contact-card:nth-child(2n){--tilt: 1.2deg}.contact-card:hover{transform:skew(-6deg) rotate(var(--tilt, -1deg)) translateY(-6px) scale(1.03);box-shadow:10px 12px #0009;color:#fff;background:var(--red)}.cc-github:hover{background:#1a1a1a}.cc-ig:hover{background:linear-gradient(45deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888)}.cc-mail:hover{background:var(--blue)}.cc-wa:hover{background:#25d366}.cc-in:hover{background:#0a66c2}.cc-discord:hover{background:#5865f2}.cc-icon{flex:none;width:42px;height:42px;display:grid;place-items:center;background:var(--ink);color:#fff;border:2px solid var(--ink);transform:skew(6deg)}.cc-icon svg{width:22px;height:22px}.cc-body{display:flex;flex-direction:column;gap:3px;min-width:0;transform:skew(6deg)}.cc-label{font-family:Archivo Black,sans-serif;font-size:clamp(.85rem,1.2vw,1rem);text-transform:uppercase;letter-spacing:.05em}.cc-handle{font-family:Oswald,sans-serif;font-weight:600;font-size:clamp(.68rem,.9vw,.8rem);letter-spacing:.06em;opacity:.75;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cc-action{margin-left:auto;flex:none;width:26px;height:26px;display:grid;place-items:center;background:var(--ink);color:#fff;transform:skew(6deg);transition:transform .25s cubic-bezier(.34,1.56,.64,1)}.cc-action svg{width:15px;height:15px}.contact-card:hover .cc-action{transform:skew(6deg) translate(3px,-3px);background:#fff;color:var(--ink)}.cc-soon{margin-left:auto;flex:none;font-family:Oswald,sans-serif;font-weight:700;font-size:.62rem;letter-spacing:.14em;padding:3px 8px;border:2px dashed var(--ink);color:#0a0a0a80;transform:skew(6deg);-webkit-user-select:none;user-select:none}.cc-copy{position:absolute;top:-12px;right:10px;font-family:Oswald,sans-serif;font-weight:700;font-size:.62rem;letter-spacing:.12em;padding:3px 10px;background:var(--ink);color:#fff;border:2px solid #fff;transform:skew(-12deg) rotate(3deg);cursor:pointer;transition:background .2s,color .2s,transform .2s}.cc-copy:hover{background:var(--red);transform:skew(-12deg) rotate(3deg) translateY(-2px)}.p5-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;pointer-events:none;visibility:hidden;overflow:hidden}.p5-overlay--in,.p5-overlay--out{visibility:visible}.p5-panel{position:absolute;top:-5%;left:-12%;width:124%;height:110%;will-change:transform;transform:translate(115%) skew(-6deg)}.p5-panel--black{background:#161616;clip-path:polygon(0 0,100% 0,78% 100%,0 100%)}.p5-panel--white{background:#f5f5f2;clip-path:polygon(8% 0,100% 0,74% 100%,4% 100%)}.p5-panel--red{background:#d8202c;clip-path:polygon(13% 0,100% 0,70% 100%,10% 100%)}.p5-overlay--blue .p5-panel--red{background:#0088d1}.p5-title{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;z-index:2;pointer-events:none}.p5-title-inner{display:inline-block;font-family:Archivo Black,sans-serif;font-size:clamp(2.3rem,8vw,6.4rem);letter-spacing:.06em;text-transform:uppercase;color:#fff;white-space:nowrap;transform:skew(-12deg) rotate(-4deg);text-shadow:6px 6px 0 #161616,12px 12px 0 rgba(0,0,0,.4)}.p5-title:before,.p5-title:after{content:"";position:absolute;left:10%;right:10%;height:3px;background:#161616;transform:skew(-30deg)}.p5-title:before{top:calc(50% - clamp(2.4rem,8vw,6.6rem))}.p5-title:after{bottom:calc(50% - clamp(2.4rem,8vw,6.6rem))}.about-hint{position:absolute;z-index:3;transform:translate(-50%,-50%);pointer-events:none;opacity:0;transition:opacity .5s ease}.about-hint--ready{opacity:1}.about-hint--seen{opacity:0;transform:translate(-50%,-50%) scale(.6);transition:opacity .6s ease,transform .6s ease}.about-hint-ring{position:absolute;left:50%;top:50%;width:46px;height:46px;margin:-23px 0 0 -23px;border:2px solid rgba(255,255,255,.9);border-radius:999px;box-shadow:0 0 14px #ffffff59,inset 0 0 10px #ffffff40;animation:hint-pulse 1.8s ease-out infinite}.about-hint-ring:after{content:"";position:absolute;left:50%;top:50%;width:6px;height:6px;margin:-3px 0 0 -3px;border-radius:999px;background:#fff}@keyframes hint-pulse{0%{transform:scale(.5);opacity:.95}70%{transform:scale(1.3);opacity:0}to{transform:scale(1.3);opacity:0}}.about-hint-tag{position:absolute;top:24px;left:50%;transform:translate(-50%) skew(-12deg) rotate(-3deg);font-family:Oswald,sans-serif;font-size:clamp(.55rem,.8vw,.7rem);font-weight:700;letter-spacing:.18em;text-transform:uppercase;background:#fff;color:#0a0a0a;border:2px solid #0a0a0a;padding:.25em .7em;box-shadow:3px 3px #0000008c;white-space:nowrap}.ls-gate{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:18px;font-family:Space Grotesk,system-ui,sans-serif;background:repeating-linear-gradient(-45deg,rgba(255,255,255,.05) 0 14px,transparent 14px 28px,rgba(220,38,38,.14) 28px 42px,transparent 42px 56px),#0b0b0ef7}.ls-card{width:100%;max-width:440px;background:var(--paper);color:var(--ink);border:3px solid #0a0a0a;border-radius:14px;box-shadow:8px 8px 0 var(--red),0 30px 60px #0000008c;padding:clamp(20px,5vw,32px);text-align:center}.ls-icon{position:relative;width:84px;height:84px;margin:0 auto 16px}.ls-phone{position:absolute;left:50%;top:50%;width:40px;height:64px;margin:-32px 0 0 -20px;border:3px solid #0a0a0a;border-radius:8px;background:var(--red);box-shadow:3px 3px #0a0a0a;animation:ls-tilt 2.4s ease-in-out infinite}.ls-phone .ls-screen{position:absolute;top:4px;right:4px;bottom:4px;left:4px;border-radius:4px;background:#0a0a0a}.ls-phone .ls-notch{position:absolute;top:-3px;left:50%;width:14px;height:5px;transform:translate(-50%);background:var(--paper);border-radius:0 0 4px 4px}.ls-arrow{position:absolute;right:-4px;bottom:0;width:34px;height:34px;display:flex;align-items:center;justify-content:center;background:#ffd02f;border-radius:50%;box-shadow:2px 2px #0a0a0a;animation:ls-spin 2.4s ease-in-out infinite}.ls-arrow svg{width:18px;height:18px}@keyframes ls-tilt{0%,to{transform:rotate(-20deg) translateY(-2px)}50%{transform:rotate(70deg) translateY(2px)}}@keyframes ls-spin{0%,to{transform:rotate(90deg)}50%{transform:rotate(0)}}.ls-kicker{margin-top:4px;font-size:clamp(.62rem,3vw,.72rem);font-weight:700;letter-spacing:.3em;text-indent:.3em;text-transform:uppercase;color:#0a0a0a99}.ls-title{margin:6px 0 4px;font-family:Archivo Black,sans-serif;font-size:clamp(1.8rem,7vw,2.5rem);line-height:1.02;text-transform:uppercase;color:var(--ink);text-shadow:3px 3px 0 var(--red)}.ls-sub{display:inline-block;padding-bottom:4px;border-bottom:3px solid #0a0a0a;margin-bottom:14px;font-size:.78rem;font-weight:800;letter-spacing:.22em;text-indent:.22em;text-transform:uppercase;color:var(--red)}.ls-why{display:flex;align-items:center;gap:8px;margin:2px 0 10px;font-family:Anton,sans-serif;font-size:clamp(.72rem,3.2vw,.85rem);letter-spacing:.14em;text-transform:uppercase;color:#0a0a0a}.ls-diamond{width:9px;height:9px;background:var(--red);transform:rotate(45deg);flex-shrink:0}.ls-reasons{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-direction:column;gap:8px;text-align:left}.ls-reasons li{position:relative;padding-left:22px;font-family:Oswald,sans-serif;font-size:clamp(.78rem,3.4vw,.9rem);line-height:1.35;color:#0a0a0ae0}.ls-reasons li:before{content:"▸";position:absolute;left:0;color:var(--red)}.ls-hint{font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#0a0a0a9e}.ls-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-top:14px;font-family:Archivo Black,sans-serif;font-size:.82rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#fff;background:var(--red);border:3px solid #0a0a0a;border-radius:10px;padding:.85em 1.6em;box-shadow:5px 5px #0a0a0a;cursor:pointer;transition:transform .15s,box-shadow .15s}.ls-btn:hover{transform:translate(-1px,-1px);box-shadow:7px 7px #0a0a0a}.ls-btn:active{transform:translate(2px,2px);box-shadow:1px 1px #0a0a0a}.ls-btn:disabled{opacity:.55;cursor:wait}.ls-err{margin-top:10px;font-family:Oswald,sans-serif;font-size:.74rem;font-weight:600;line-height:1.3;color:#fff;background:var(--red);border:2px solid #0a0a0a;border-radius:8px;padding:8px 10px;box-shadow:3px 3px #0a0a0a}.ls-desktop-tip{display:flex;align-items:flex-start;gap:10px;margin-top:16px;padding:10px 14px;background:#0000000f;border:2px dashed rgba(10,10,10,.2);border-radius:8px;text-align:left}.ls-desktop-tip p{font-family:Oswald,sans-serif;font-size:clamp(.65rem,2.8vw,.78rem);font-weight:600;line-height:1.4;letter-spacing:.04em;color:#0a0a0ab3}.ls-desktop-tip strong{color:var(--ink);font-weight:800}.ls-desktop-diamond{width:8px;height:8px;min-width:8px;background:var(--blue);transform:rotate(45deg);margin-top:4px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (max-width: 1023px) and (orientation: landscape){#menu{padding:clamp(8px,2vh,16px) clamp(14px,3vw,28px)}.name-text{font-size:clamp(1.05rem,2.6vw,1.6rem)}.strip-2{margin-left:clamp(10px,2vw,22px)}.student-badge{font-size:clamp(3.7px,1.2vh,5.8px)}.badge-tilt{transform:rotate(3.5deg) scale(.88);transform-origin:top right;margin-right:-8px}.badge-tilt:hover{transform:rotate(2deg) scale(.91)}.mission-wrap{margin-top:clamp(20px,7vh,44px);margin-left:clamp(8px,1.8vw,24px);width:min(430px,76vw)}.mission-box{padding:clamp(10px,2vh,16px) clamp(12px,2.5vw,22px);border-width:3px;box-shadow:5px 5px #000000d9}.mission-tag{font-size:clamp(7px,1.5vh,9px);padding:.4em 1.2em;top:-11px;right:-9px;border-width:2px}.mission-title{gap:10px;margin-bottom:clamp(10px,2vh,18px)}.mission-word{font-size:clamp(.95rem,2.8vh,1.55rem);border-width:2px;padding:.14em .45em}.mission-word.op,.mission-word.vg,.mission-word.yl,.mission-word.pu{box-shadow:2px 2px 0 var(--ink)}.mission-text{font-size:clamp(.6rem,1.7vh,.78rem);line-height:1.5;padding:8px 12px}.mission-deck{margin-bottom:clamp(34px,10vh,60px)}.mission-pos-1{transform:translate(20px,15px) rotate(2.5deg)}.mission-pos-2{transform:translate(-18px,30px) rotate(-4.5deg)}.mission-pos-1:hover{transform:translate(20px,11px) rotate(2deg)}.mission-pos-2:hover{transform:translate(-14px,26px) rotate(-3.5deg)}.mission-hint{transform:translateY(clamp(3px,1vh,9px));font-size:clamp(.45rem,1.4vh,.56rem)}.menu-list{transform:translateY(clamp(24px,7vh,56px));width:min(88vw,560px)}.menu-link{gap:clamp(12px,2.5vw,22px);padding-block:clamp(3px,.7vh,7px)}.menu-slot{height:clamp(32px,7.5vh,52px)}.menu-label{font-size:clamp(1rem,4.5vh,1.7rem)}.menu-banner{width:min(200px,30vw)}.menu-item:hover .menu-label{opacity:1;transform:none}.menu-item:hover .menu-banner{opacity:0;transform:translateY(-50%) scale(.55) rotate(8deg)}.keyhints{margin-top:clamp(6px,1.4vh,12px);margin-bottom:clamp(20px,5vh,40px)}.skills-logo{top:clamp(-16px,-1.8vh,-10px);left:clamp(12px,2.5vw,28px);width:clamp(100px,14vw,180px);max-width:180px}.skillbars-wrap{top:clamp(110px,30vh,200px);left:clamp(16px,3vw,36px);width:min(580px,68vw)}.skillbars-scroll{max-height:max(140px,calc(100vh - 180px))}.skillbar-row{margin-bottom:8px}.skillbar-label{margin-bottom:3px}.skillbar-name{font-size:clamp(6px,.6vw,8px)}.skillbar-diamond{width:5px;height:5px}.skillbar-percent{font-size:clamp(7px,.6vw,8.5px)}.skillbar-percent:after{font-size:7px}.skillbar-shell{height:8px;border-left-width:2px;clip-path:polygon(0 0,100% 0,calc(100% - 6px) 100%,0 100%)}.skills-bottom{bottom:clamp(8px,1.5vh,16px);left:clamp(16px,3vw,36px)}.skills-back,.skills-scroll-btn{font-size:clamp(7px,.7vw,9px);padding:.24em .65em}.about-bottom{bottom:clamp(12px,2vh,28px);left:clamp(12px,2.5vw,32px)}.about-box{left:8%;top:50%;transform:translateY(-50%);width:min(310px,38vw)}.about-box-panel{padding:6px 9px 7px;box-shadow:4px 4px #dc2626e6,0 8px 20px #0009}.about-box-card{border-width:2px}.about-box-card--mid{transform:translate(7px,6px) rotate(1.9deg);box-shadow:4px 4px #dc262680}.about-box-card--back{transform:translate(-6px,13px) rotate(-3.6deg);box-shadow:4px 4px #dc262640,0 9px 20px #000000a6}.about-box-tag{font-size:clamp(.32rem,1.5vh,.42rem);margin-left:8px;margin-bottom:-5px}.about-box-name{font-size:clamp(.62rem,3.6vh,.9rem)}.about-box-alias{font-size:clamp(.32rem,1.6vh,.44rem)}.about-box-bio{font-size:clamp(.44rem,1.85vh,.58rem);line-height:1.38;margin-bottom:.45em}.about-box-facts{gap:3px 6px;padding-top:.35em;margin-top:.1em}.about-box-fact{gap:4px}.about-box-fact-label{font-size:clamp(.28rem,1.35vh,.38rem);box-shadow:2px 2px #dc2626d9}.about-box-fact-value{font-size:clamp(.36rem,1.7vh,.5rem)}.projects-header{top:clamp(10px,1.5vh,18px)}.projects-heading span{font-size:clamp(1.2rem,3vw,2rem);padding:.04em .28em}.projects-banner{width:clamp(90px,13vw,170px);max-width:170px;top:-6px;right:-6px}.projects-scroll{top:clamp(60px,8vh,90px);bottom:clamp(48px,6vh,60px);padding:12px 8px 14px 4px}.projects-grid{gap:clamp(14px,1.8vw,20px)}.project-card{min-height:180px;height:200px}.pc-title{font-size:clamp(.85rem,1.4vw,1rem)}.pc-desc{font-size:clamp(.7rem,.85vw,.8rem);padding:10px 12px}.projects-bottom{bottom:clamp(8px,1.5vh,14px)}.contact-header{top:clamp(10px,1.5vh,18px);left:clamp(12px,2.5vw,28px)}.contact-heading span{font-size:clamp(1.2rem,3vw,2rem);padding:.04em .28em}.contact-scroll{padding:clamp(50px,9vh,80px) clamp(12px,4vw,40px) clamp(40px,7vh,60px);gap:clamp(10px,2vh,20px)}.contact-lede{font-size:clamp(.75rem,1.4vw,1rem);max-width:560px}.contact-grid{grid-template-columns:repeat(auto-fit,minmax(200px,260px));gap:clamp(10px,1.5vw,18px);max-width:900px}.contact-card{padding:12px 14px}.cc-icon{width:36px;height:36px}.cc-icon svg{width:18px;height:18px}.cc-label{font-size:clamp(.75rem,1.1vw,.9rem)}.cc-handle{font-size:clamp(.62rem,.85vw,.74rem)}.cc-action{width:22px;height:22px}.cc-action svg{width:13px;height:13px}}@media (max-width: 667px) and (orientation: landscape){#menu{padding:clamp(6px,1.6vh,12px) clamp(10px,2.4vw,20px)}.name-text{font-size:clamp(.9rem,2.4vw,1.2rem)}.student-badge{font-size:clamp(3.3px,1.15vh,4.8px)}.badge-tilt{transform:rotate(3.5deg) scale(.78);margin-right:-6px}.badge-tilt:hover{transform:rotate(2deg) scale(.81)}.mission-wrap{margin-top:clamp(16px,6vh,36px);width:min(400px,74vw)}.mission-box{padding:7px clamp(8px,1.8vw,14px);box-shadow:4px 4px #000000d9}.mission-word{font-size:clamp(.85rem,2.5vh,1.2rem)}.mission-text{font-size:clamp(.58rem,1.6vh,.72rem);line-height:1.5;padding:8px 10px}.mission-tag{font-size:clamp(6px,1.35vh,8px);top:-10px;right:-8px}.mission-deck{margin-bottom:clamp(28px,9vh,52px)}.mission-pos-1{transform:translate(16px,12px) rotate(2.5deg)}.mission-pos-2{transform:translate(-14px,24px) rotate(-4.5deg)}.mission-pos-1:hover{transform:translate(16px,9px) rotate(2deg)}.mission-pos-2:hover{transform:translate(-11px,21px) rotate(-3.5deg)}.mission-hint{transform:translateY(clamp(2px,.8vh,6px));font-size:clamp(.42rem,1.3vh,.52rem)}.menu-list{transform:translateY(clamp(20px,7vh,48px))}.menu-slot{height:clamp(26px,6.8vh,40px)}.menu-label{font-size:clamp(.9rem,4.2vh,1.45rem)}.menu-banner{width:min(170px,27vw)}.menu-link{padding-block:clamp(2px,.5vh,5px)}.menu-item:hover .menu-label{opacity:1;transform:none}.menu-item:hover .menu-banner{opacity:0;transform:translateY(-50%) scale(.55) rotate(8deg)}.keyhints{display:none}.skills-logo{top:clamp(-12px,-1.5vh,-8px);left:clamp(10px,2vw,20px);width:clamp(80px,12vw,140px);max-width:140px}.skillbars-wrap{top:clamp(95px,28vh,170px);left:clamp(12px,2.5vw,28px);width:min(500px,68vw)}.skillbars-scroll{max-height:max(120px,calc(100vh - 160px))}.skillbar-row{margin-bottom:7px}.skillbar-label{margin-bottom:2px}.skillbar-name{font-size:clamp(5px,.5vw,7px)}.skillbar-diamond{width:4px;height:4px}.skillbar-percent{font-size:clamp(6px,.5vw,7.5px)}.skillbar-percent:after{font-size:6.5px}.skillbar-shell{height:7px;border-left-width:2px;clip-path:polygon(0 0,100% 0,calc(100% - 5px) 100%,0 100%)}.skills-bottom{bottom:clamp(6px,1.2vh,12px);left:clamp(12px,2.5vw,28px)}.skills-back,.skills-scroll-btn{font-size:clamp(6.5px,.65vw,8.5px);padding:.22em .6em}.about-box{width:min(270px,42vw)}.about-box-panel{padding:5px 8px 6px}.about-box-bio{font-size:clamp(.4rem,1.8vh,.52rem);line-height:1.34}.about-box-facts{gap:3px 5px}.projects-banner{width:clamp(75px,11vw,130px);max-width:130px;top:-5px;right:-5px}.projects-header{top:clamp(8px,1.2vh,14px)}.projects-heading span{font-size:clamp(1rem,2.5vw,1.6rem);padding:.04em .24em;border:2px solid #000}.projects-scroll{top:clamp(50px,7vh,75px);bottom:clamp(40px,5vh,50px)}.project-card{min-height:160px;height:180px}}@media (max-height: 450px) and (orientation: landscape){#menu{overflow-x:hidden;overflow-y:auto;padding:clamp(4px,1.4vh,10px) clamp(10px,2vw,18px)}.student-badge{font-size:clamp(3.1px,1.1vh,4.4px)}.mission-wrap{margin-top:clamp(12px,5vh,28px);width:min(260px,60vw)}.mission-box{padding:clamp(5px,1vh,8px)}.mission-word{font-size:clamp(.68rem,1.6vw,1rem)}.mission-text{font-size:clamp(.48rem,.9vh,.56rem);line-height:1.3;padding:5px 7px}.mission-deck{margin-bottom:clamp(14px,2.5vh,22px)}.mission-pos-1{transform:translate(14px,12px) rotate(2.5deg)}.mission-pos-2{transform:translate(-14px,24px) rotate(-4.5deg)}.menu-list{transform:translateY(clamp(12px,4.5vh,26px))}.menu-slot{height:clamp(20px,5.6vh,32px)}.menu-label{font-size:clamp(.78rem,3.6vh,1.2rem)}.menu-item:hover .menu-label{opacity:1;transform:none}.menu-item:hover .menu-banner{opacity:0;transform:translateY(-50%) scale(.55) rotate(8deg)}.skills-logo{top:clamp(-10px,-1.2vh,-6px);left:clamp(8px,1.8vw,18px);width:clamp(70px,11vw,120px);max-width:120px}.skillbars-wrap{top:clamp(80px,25vh,140px);left:clamp(10px,2vw,24px)}.skillbars-scroll{max-height:max(100px,calc(100vh - 145px))}.skillbar-row{margin-bottom:8px}.skillbar-shell{height:8px;border-left-width:2px;clip-path:polygon(0 0,100% 0,calc(100% - 5px) 100%,0 100%)}.about-box-panel{max-height:86vh;overflow-y:auto;scrollbar-width:none}.about-box-panel::-webkit-scrollbar{display:none}.projects-banner{width:clamp(65px,10vw,110px);max-width:110px;top:-4px;right:-4px}.projects-heading span{font-size:clamp(.9rem,2.2vw,1.4rem)}.project-card{min-height:150px;height:170px}.pc-title{font-size:clamp(.75rem,1.2vw,.9rem)}.pc-desc{font-size:clamp(.65rem,.8vw,.75rem);padding:8px 10px}}@media (max-height: 400px) and (orientation: landscape){.mission-wrap{margin-top:clamp(10px,4vh,22px);width:min(240px,55vw)}.mission-box{padding:clamp(4px,.8vh,6px);border-width:2px}.mission-word{font-size:clamp(.6rem,1.4vw,.9rem);border-width:2px;padding:.08em .3em}.mission-text{font-size:clamp(.44rem,.8vh,.52rem);padding:4px 6px;border-left-width:2px}.mission-deck{margin-bottom:clamp(10px,2vh,18px)}.mission-pos-1{transform:translate(12px,10px) rotate(2.5deg)}.mission-pos-2{transform:translate(-12px,20px) rotate(-4.5deg)}.menu-slot{height:clamp(18px,5vh,28px)}.menu-label{font-size:clamp(.72rem,3.2vh,1.1rem)}.menu-item:hover .menu-label{opacity:1;transform:none}.menu-item:hover .menu-banner{opacity:0;transform:translateY(-50%) scale(.55) rotate(8deg)}}@media (max-width: 720px){.projects-banner{width:clamp(120px,34vw,195px);top:-10px;right:-10px}.projects-header{top:72px}.projects-scroll{top:136px;left:10px;right:10px;bottom:64px}.projects-grid{grid-template-columns:1fr}.contact-grid{grid-template-columns:1fr;max-width:340px}.keyhints{display:none}}@media (max-width: 780px){.badge-tilt{transform:rotate(3.5deg) scale(.82);transform-origin:top right;margin-right:-10px}}
