@font-face{font-family:Trends;font-style:normal;font-weight:400;src:url(/static/media/Trends.c7dcd38d7493630091d5.ttf) format("truetype")}html{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fff;color:#666;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1.125rem;line-height:1.6;margin:0;overflow-x:hidden}h1,h2,h3,h4,h5,h6{color:#212325;font-weight:700;margin-top:0}h1{font-size:3rem;letter-spacing:-.02em;line-height:1.2}h1,h2{margin-bottom:24px}h2{font-size:2.25rem;letter-spacing:-.01em;line-height:1.3}h3{font-size:1.5rem;font-weight:600;line-height:1.4}h3,p{margin-bottom:16px}p{margin-top:0}small{font-size:.875rem;line-height:1.5}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{background-color:#fff;color:#212325;display:flex;flex-direction:column;font-family:Segoe UI,sans-serif;line-height:1.6;min-height:100vh}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.footer{align-items:center;background-color:#fff;box-sizing:border-box;color:#212325;display:flex;flex-direction:column;justify-content:center;margin-top:50px;padding:40px 20px;text-align:center}.footer p{color:#666;font-size:.85rem;margin:5px 0}.header{align-items:center;backdrop-filter:saturate(120%) blur(6px);-webkit-backdrop-filter:saturate(120%) blur(6px);background-color:#ffffffd9;box-shadow:0 1px 4px #0000000d;box-sizing:border-box;color:#212325;display:flex;justify-content:space-between;padding:10px 50px;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.logo{height:40px;transition:opacity .3s ease,transform .3s ease;width:auto}.header-face-logo,.scrolled .logo{opacity:0;pointer-events:none}.header-face-logo{border-radius:50%;height:36px;left:50%;position:absolute;transform:translateX(-50%) scale(.8);transition:opacity .3s ease,transform .3s ease;width:auto}.scrolled .header-face-logo{opacity:1;pointer-events:auto;transform:translateX(-50%) scale(1)}.nav-links a{color:#000;font-weight:700;margin:0 15px;text-decoration:none}.hamburger{background:none;border:none;cursor:pointer;display:none;flex-direction:column;height:18px;justify-content:space-between;padding:0;width:24px;z-index:1001}.hamburger span{background-color:#212325;border-radius:2px;display:block;height:2px;transform-origin:center;transition:transform .25s ease,opacity .25s ease;width:100%}.hamburger.active span:first-child{transform:translateY(8px) rotate(45deg)}.hamburger.active span:nth-child(2){opacity:0}.hamburger.active span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}@media (max-width:600px){.header{padding:10px 24px}.hamburger{display:flex}.nav-links{align-items:center;backdrop-filter:saturate(120%) blur(6px);-webkit-backdrop-filter:saturate(120%) blur(6px);background-color:#fffffff7;box-shadow:0 4px 12px #00000014;display:none;flex-direction:column;gap:0;left:0;position:absolute;right:0;top:100%;z-index:999}.nav-links.open{display:flex}.nav-links a{border-bottom:1px solid #0000000f;font-size:1rem;margin:0;padding:16px 0;text-align:center;width:100%}.nav-links a:last-child{border-bottom:none}}.introduction{padding:100px 0}.intro-text,.introduction{align-items:center;display:flex;flex-direction:column}.intro-text{margin-top:20px}.face-logo{animation:floating 4s ease-in-out infinite;border-radius:50%;height:100px;margin-bottom:20px;width:auto}@keyframes floating{0%{transform:translateY(0)}50%{transform:translateY(-8px)}to{transform:translateY(0)}}.about-me,.connect,.selected-work{align-items:flex-start;display:flex;flex-direction:column;margin-top:72px;padding:0 18%;scroll-margin-top:70px}p{max-width:800px}.job-badge{align-items:center;background-color:#e8f5e9;border-radius:20px;color:#2e7d32;display:inline-flex;font-size:.85rem;font-weight:500;gap:6px;margin-bottom:16px;padding:4px 12px 4px 10px;white-space:nowrap}.job-badge:before{background-color:#4caf50;border-radius:50%;content:"";display:inline-block;flex-shrink:0;height:7px;width:7px}.role{background-color:#f7f7f7;border-radius:12px;color:#212325;display:inline-block;font-size:.9em;font-weight:500;margin:0 2px;padding:2px 8px;transition:background-color .2s;white-space:nowrap}.role:hover{background-color:#e8e8e8}@media (max-width:900px){.about-me,.connect,.selected-work{margin-top:56px;padding:0 8%}.intro-text{padding:0 12%}.intro-text h1{font-size:2.5rem}}@media (max-width:480px){.about-me,.connect,.selected-work{margin-top:40px;padding:0 6%}.introduction{padding:60px 0 30px}.connect-content{align-items:flex-start;flex-direction:column}.role{margin-top:6px}}.work-buttons{display:flex;gap:20px;justify-content:center;margin-top:20px}.connect-content{align-items:center;display:flex;gap:40px;justify-content:space-between;overflow:hidden;width:100%}.connect-text{align-items:flex-start;display:flex;flex-direction:column}.connect-buttons{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.work-selector{margin-top:16px}.work-selector .work-buttons{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.work-selector .work-button{background-color:#f7f7f7;border:none;border-radius:5px;color:#868686;cursor:pointer;font-weight:700;padding:10px 20px}.work-selector .work-button.active{background-color:#212325;color:#fff}.work-selector .work-list{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr);margin-top:18px}@media (max-width:600px){.work-selector .work-list{grid-template-columns:1fr}}.work-selector .work-item{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000000f;cursor:pointer;padding:16px;transition:transform .15s ease,box-shadow .15s ease}.work-selector .work-item:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.work-item-thumbnail{border-radius:8px;flex-shrink:0;height:40px;object-fit:cover;width:40px}.work-item-header-text{align-items:center;display:flex;flex-direction:row;flex-wrap:wrap;gap:10px}.work-selector .work-item h3{font-size:1rem;margin:0}.work-selector .work-item p{color:#666;font-size:.9rem;line-height:1.5;margin:0 0 12px}.tags-list{display:flex;flex-wrap:wrap;gap:8px}.tag{background-color:#f0f0f0;border-radius:16px;color:#555;font-size:.85rem;font-weight:500;padding:4px 10px}.work-item-badge{background-color:#e8f5e9;border:1px dashed #81c784;border-radius:20px;color:#388e3c;display:inline-block;font-size:11px;font-weight:600;padding:4px 10px;white-space:nowrap}.archive-toggle{background:none;border:none;color:#aaa;cursor:pointer;font-size:.85rem;font-weight:500;margin-top:12px;padding:4px 0}.archive-toggle:hover{color:#666}.work-list-archive{opacity:.7}.work-item-header{align-items:center;display:flex;gap:12px;margin-bottom:10px}.project-about{margin-top:24px}.project-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.project-link-btn{background-color:#f7f7f7;border-radius:5px;color:#868686;font-size:.85rem;font-weight:700;padding:8px 16px;text-decoration:none;transition:background-color .2s ease}.project-link-btn:hover{background-color:#e8e8e8}.game-designs-section{margin-top:28px}.project-gallery-section,.project-preview{margin-top:20px}.project-iframe{border:1px solid #ddd;border-radius:8px;display:block;height:500px;width:100%}.custom-button{background-color:#f7f7f7;border:none;border-radius:5px;color:#868686;cursor:pointer;font-size:.9rem;font-weight:700;padding:10px 20px;text-decoration:none;transition:background-color .2s ease}.custom-button:hover{background-color:#e8e8e8}.custom-button.active{background-color:#212325;color:#fff}a.custom-button{display:inline-block}.custom-button.small{font-size:.8rem;padding:6px 12px}.modal-backdrop{align-items:center;animation:fadeIn .3s ease-in-out;background-color:#00000080;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{animation:slideUp .3s ease-in-out;background-color:#fff;border-radius:12px;box-shadow:0 4px 20px #00000026;max-height:80vh;max-width:600px;overflow-y:auto;width:90%}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{align-items:center;background-color:#fff;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:24px;position:-webkit-sticky;position:sticky;top:0;z-index:1}.modal-header h2{color:#333;font-size:24px;font-weight:600;margin:0}.modal-close-btn{align-items:center;background:none;border:none;border-radius:4px;color:#666;cursor:pointer;display:flex;font-size:32px;height:40px;justify-content:center;padding:0;transition:all .2s ease;width:40px}.modal-close-btn:hover{background-color:#f0f0f0;color:#000}.modal-close-btn:focus{outline:2px solid #4caf50;outline-offset:2px}.modal-body{color:#555;line-height:1.6;padding:24px}@media (max-width:768px){.modal-content{max-height:90vh;width:95%}.modal-header{padding:16px}.modal-header h2{font-size:20px}.modal-body{padding:16px}}.modal-title-row{align-items:center;display:flex;gap:12px}.modal-badge{background-color:#e8f5e9;border:1px dashed #81c784;border-radius:20px;color:#388e3c;font-size:11px;font-weight:600;padding:5px 12px;white-space:nowrap}.card-gallery{align-items:center;display:flex;flex-direction:column;gap:16px;padding:20px 0}.card-gallery-header{align-items:center;display:flex;justify-content:space-between;max-width:300px;width:100%}.card-gallery.background .card-gallery-header{max-width:400px}.group-name{color:#333;font-size:14px;font-weight:600}.card-counter{color:#888;font-size:13px}.card-gallery-viewer{align-items:center;display:flex;gap:16px}.card-display{align-items:center;display:flex;flex-direction:column;gap:12px}.card-display img{border-radius:8px;box-shadow:0 4px 12px #00000026;height:280px;object-fit:contain;transition:transform .2s ease;width:200px}.card-display.background img,.card-display.button img{border-radius:0;box-shadow:none}.card-display.button img{height:auto;width:200px}.card-display.background img{height:auto;max-width:400px;width:100%}.card-display img:hover{transform:scale(1.02)}.card-label{color:#555;font-size:14px;font-weight:500}.group-dots{display:flex;gap:8px;margin-top:8px}.group-dot{background-color:#ddd;border:none;border-radius:50%;cursor:pointer;height:10px;padding:0;transition:all .2s ease;width:10px}.group-dot:hover{background-color:#bbb}.group-dot.active{background-color:#555;transform:scale(1.2)}@media (max-width:480px){.card-display img{height:220px;width:160px}.card-display.button img{height:auto;width:150px}.card-display.background img{max-width:280px}}.character-container{align-items:center;display:flex;flex-direction:column;gap:8px}.speech-bubble{background:#f7f7f7;border-radius:12px;box-sizing:border-box;color:#212325;font-family:monospace;font-size:.85rem;font-weight:500;padding:6px 12px;position:relative;text-align:center;white-space:nowrap;width:200px}.cursor{animation:blink .7s step-end infinite;display:inline-block;font-size:.75rem;margin-left:1px;vertical-align:middle}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.speech-bubble:after{border:5px solid #0000;border-bottom:none;border-top-color:#f7f7f7;bottom:-8px;content:"";left:50%;position:absolute;transform:translateX(-50%)}.character-wrapper{cursor:pointer;height:120px;image-rendering:pixelated;position:relative;width:120px}.character-base{display:block;height:100%;width:100%}.character-face{height:100%;left:0;position:absolute;top:0;transition:opacity .3s ease;width:100%}.PlayPage{animation:fadeIn .6s ease-out;padding:72px 18%}.play-intro{margin:0 0 60px;max-width:700px;text-align:left}.hobby-list{gap:72px}.hobby-item,.hobby-list{display:flex;flex-direction:column}.hobby-item{align-items:flex-start}.hobby-header{align-items:center;display:flex;gap:16px;margin-bottom:12px}.hobby-item h2,.hobby-item p{margin:0 0 16px}.hobby-item p{max-width:700px}.badge{background-color:#f7f7f7;border-radius:4px;color:#868686;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:2px 10px;text-transform:uppercase;white-space:nowrap}.stats-pills{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.club-link{align-items:center;color:#212325;display:inline-flex;font-weight:600;margin-top:8px;text-decoration:none;transition:color .2s ease}.club-link:hover{color:#868686}.creative-coding-content{margin-top:16px}.creative-coding-title{margin-bottom:10px}.hobby-iframe{border:1px solid #ddd;border-radius:8px;display:block;height:480px;margin-top:12px;width:100%}.sketchbook-item{align-items:stretch}.sketchbook-container{margin-top:24px;width:100%}.bsc-fliers{display:flex;flex-wrap:wrap;gap:16px;margin-top:24px}.bsc-flier{box-shadow:0 2px 8px #00000014;height:260px;object-fit:contain;width:auto}@media (max-width:600px){.bsc-fliers{flex-direction:column}.bsc-flier{height:auto;object-fit:cover;width:100%}}.favorites-grid{display:flex;flex-wrap:wrap;gap:16px;margin-top:8px}.favorite-item{align-items:center;background:#f7f7f7;border-radius:12px;display:flex;flex-direction:column;gap:8px;padding:20px 28px}.favorite-emoji{font-size:2rem}.favorite-label{color:#888;font-size:.8rem;font-weight:500}@media (max-width:900px){.PlayPage{padding:56px 8%}}@media (max-width:480px){.PlayPage{padding:40px 6%}}.Sketchbook{align-items:center;display:flex;gap:1rem;justify-content:center;padding:1rem;width:100%}.page{max-width:600px;width:100%}.page img{display:block;height:auto;object-fit:contain;width:100%}.arrow{background:none;border:none;cursor:pointer;font-size:2rem;padding:.5rem}.arrow:disabled{cursor:default;opacity:.3}.swipe-hint{display:none}.swipe-hint-arrow{opacity:1}.swipe-hint-arrow.faded{opacity:.2}@media (max-width:600px){.Sketchbook{flex-direction:column}.arrow{display:none}.swipe-hint{color:#aaa;display:block;font-size:.75rem;margin-top:8px;text-align:center}}.not-found-page{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:60vh;padding:80px 20px;text-align:center}.not-found-label{color:#aaa;font-size:.9rem;letter-spacing:.05em;margin-bottom:32px}.thank-you-card-404{align-items:center;background-color:#f7f7f7;border-radius:20px;display:flex;gap:24px;padding:32px 48px}.thank-you-face-404{border-radius:50%;height:120px;width:auto}.thank-you-text-404{color:#212325;font-family:Trends,sans-serif;font-size:2.5rem;line-height:1;text-align:left}.not-found-sub{color:#888;font-size:.95rem;margin-top:32px}@media (max-width:480px){.thank-you-card-404{gap:16px;padding:24px 32px}.thank-you-text-404{font-size:2.5rem}}
/*# sourceMappingURL=main.f31e7a8a.css.map*/