body,html{max-width:100vw;overflow-x:hidden}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fff}body,button{font-family:Bricolage Grotesque,sans-serif!important}*{box-sizing:border-box;padding:0;margin:0}a{color:inherit;text-decoration:none}h1,h2,h3{font-family:Bricolage Grotesque,sans-serif!important}.container{max-width:700px;margin:0 auto;padding:20px}.container .profile-header{display:flex;align-items:center;gap:1rem;margin-bottom:2rem}.container .profile-image{padding:2px;border-radius:12px;display:inline-flex;border:1px solid #e5e7eb;align-items:center;box-shadow:0 0 rgba(0,0,0,0),0 0 rgba(0,0,0,0),0 1px 2px 0 rgba(0,0,0,.05)}.container .profile-image img{border-radius:10px}.container h1{font-size:1.4rem}.container .title{color:#666}p{margin-bottom:10px;line-height:22px;color:#2b2b2b}p span{font-weight:500;color:#000}.section{display:flex;margin-bottom:10px;align-items:center;gap:10px}.section p{margin-bottom:0}.project-stats{display:flex;align-items:center;flex-wrap:wrap;margin-bottom:20px}.project-stats .stats-item{display:flex;align-items:center;font-size:13px;color:#666}.projects{margin-top:40px}.projects li{display:flex;gap:20px;position:relative}.projects li:before{content:"";border:.5px solid #e5e7eb;position:absolute;height:100%;left:16px;z-index:9}.projects li .project-logo{z-index:9999}.projects li .project-logo .logo{background-color:#fff;border:1px solid #e5e7eb;box-shadow:0 0 rgba(0,0,0,0),0 0 rgba(0,0,0,0),0 1px 2px 0 rgba(0,0,0,.05);display:flex;align-items:center;border-radius:12px}.projects li .project-logo .logo img{padding:2px;border-radius:12px}.projects li .project-content .project-period{font-size:14px;color:#666}.projects li .project-content .project-link{font-weight:600;text-decoration:underline;color:#000}.button{padding:9px 12px;border-radius:6px;font-size:13px;color:#fff;transition:all .4s cubic-bezier(.25,.46,.45,.94);border:0;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:.95rem;letter-spacing:.02em;cursor:pointer;text-decoration:none;position:relative;overflow:hidden;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(145deg,#1a1a1a,#2c2c2c 25%,#1f1f1f 50%,#2a2a2a 75%,#0f0f0f);border-color:hsla(0,0%,100%,.2);transform:translateY(-2px)}@media(max-width:768px){.button{padding:.65rem 1rem;font-size:.85rem;gap:6px}}@media(max-width:480px){.button{padding:.6rem .9rem;font-size:.8rem;border-radius:12px}}.button svg{width:16px;height:16px}@media(max-width:768px){.button svg{width:14px;height:14px}}.button:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle at center,rgba(255,255,255,.15) 0,rgba(255,255,255,.05) 30%,transparent 70%);transform:scale(0);transition:transform .6s ease;border-radius:50%}.button:hover:before{transform:scale(1)}.button--primary{border-radius:12px;color:#fff;background:linear-gradient(145deg,#1a1a1a,#2c2c2c 25%,#1f1f1f 50%,#2a2a2a 75%,#0f0f0f);border:1px solid hsla(0,0%,100%,.2);transform:translateY(-2px)}@media(max-width:480px){.button--primary{border-radius:14px}}.button--primary:after{content:"";position:absolute;inset:1px;border-radius:11px;background:linear-gradient(145deg,rgba(255,255,255,.1),transparent 50%,rgba(255,255,255,.05));pointer-events:none}@media(max-width:480px){.button--primary:after{border-radius:13px}}.button--primary:focus{outline:none;box-shadow:0 0 0 4px hsla(0,0%,100%,.15),0 8px 32px -4px rgba(0,0,0,.2),inset 0 1px 0 hsla(0,0%,100%,.2)}.button--primary:hover{background:linear-gradient(145deg,#1a1a1a,#2c2c2c 25%,#1f1f1f 50%,#2a2a2a 75%,#0f0f0f);border-color:hsla(0,0%,100%,.2);transform:translateY(-2px);box-shadow:0 8px 32px -4px rgba(0,0,0,.25),0 4px 16px -2px rgba(0,0,0,.15),inset 0 1px 0 hsla(0,0%,100%,.2)}.button--primary:active{transform:translateY(-1px)}.button--secondary{background:hsla(0,0%,100%,.08);color:#1a1a1a;border:1px solid #000;border-radius:12px}@media(max-width:480px){.button--secondary{border-radius:12px}}.button--secondary:after{content:"";position:absolute;inset:1px;border-radius:11px;background:linear-gradient(145deg,rgba(255,255,255,.15),transparent 50%,rgba(255,255,255,.08));pointer-events:none}@media(max-width:480px){.button--secondary:after{border-radius:11px}}.button--secondary:focus{outline:none;box-shadow:0 0 0 3px hsla(0,0%,100%,.12),0 4px 24px -2px rgba(0,0,0,.1)}.button--secondary:hover{background:hsla(0,0%,100%,.18);color:#000}.button--secondary:active{transform:translateY(0)}.button--tertiary{background:linear-gradient(145deg,#1a1a1a,#2d2d2d 50%,#232323);color:#fff;border:1px solid hsla(0,0%,100%,.06);border-radius:14px}@media(max-width:480px){.button--tertiary{border-radius:10px}}.button--tertiary:after{content:"";position:absolute;inset:1px;border-radius:13px;background:linear-gradient(145deg,rgba(255,255,255,.06),transparent 60%,rgba(255,255,255,.02));pointer-events:none}@media(max-width:480px){.button--tertiary:after{border-radius:9px}}.button--tertiary:focus{outline:none;box-shadow:0 0 0 3px hsla(0,0%,100%,.08),0 6px 24px -2px rgba(0,0,0,.2)}.button--tertiary:hover{background:linear-gradient(145deg,#2d2d2d,#3a3a3a 50%,#333333);border-color:hsla(0,0%,100%,.12);transform:translateY(-1px);box-shadow:0 12px 48px -8px rgba(0,0,0,.3),0 6px 24px -4px rgba(0,0,0,.15),inset 0 1px 0 hsla(0,0%,100%,.1)}.button--tertiary:active{transform:translateY(0)}.button--small{padding:.45rem .65rem;font-size:.8rem;border-radius:10px}@media(max-width:768px){.button--small{padding:.4rem .6rem;font-size:.75rem}}@media(max-width:480px){.button--small{padding:.35rem .5rem;font-size:.7rem;border-radius:8px}}.button--small:after{border-radius:0!important}.button:disabled{opacity:.4;cursor:not-allowed;transform:none!important;filter:grayscale(.3)}.button:disabled:after,.button:disabled:before{display:none}.button--loading{pointer-events:none}.button--loading:after{content:"";position:absolute;width:18px;height:18px;border:2px solid hsla(0,0%,100%,.2);border-top-color:currentcolor;border-radius:50%;animation:smoothSpin 1.2s cubic-bezier(.4,0,.6,1) infinite}@media(max-width:768px){.button--loading:after{width:16px;height:16px}}.button--loading svg{opacity:0;transform:scale(.8)}