:root{--background-color: #1a1a2e;--primary-color: #0f3460;--secondary-color: #e94560;--accent-color: #16213e;--font-color: #ffffff;--glow-color: #00ffff;--card-height: 340px}body,code,html,kbd,pre,samp{font-family:"Press Start 2P",cursive}html{cursor:auto}body{background-color:var(--background-color);color:var(--font-color);background-image:linear-gradient(rgba(0,0,0,.5) 50%,transparent 50%);background-size:100% 4px}h1,h2,h3,h4,h5,h6{color:var(--secondary-color);text-shadow:0 0 5px var(--secondary-color)}a,button{color:var(--font-color);text-shadow:0 0 5px var(--glow-color);cursor:pointer;text-decoration:none}a:hover,button:hover{color:var(--secondary-color)}.container{margin:auto;max-width:980px;padding:0 1rem}header{background-color:var(--accent-color);border-bottom:4px solid var(--primary-color);padding:1rem 0;margin-bottom:2rem}header .container{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:.5rem 1rem}.nav-brand a{color:var(--font-color);text-decoration:none;font-size:1.5rem}.nav-brand,.navbar-nav,.social-buttons{min-width:0}.navbar-nav{display:flex;list-style:none;padding:0;margin:0;gap:1rem;align-items:center;flex-wrap:wrap}.nav-item{margin-left:0}.nav-link{font-size:1rem}.social-buttons{text-align:right}@media (max-width: 600px){header .container{align-items:center;padding:.5rem 0}.nav-brand{order:1;width:100%;text-align:center}.navbar-nav{order:2;width:100%;justify-content:center;margin-top:.5rem}.social-buttons{order:3;width:100%;text-align:center;margin-top:.25rem}.nav-link{font-size:.85rem}}.social-buttons p{margin-bottom:.5rem}.nes-icon.github.is-dark{filter:invert(1)}main.container{background-color:var(--accent-color);padding:2rem;border:4px solid var(--primary-color)}.page-footer{margin-top:2rem;padding:1rem;border-top:4px solid var(--primary-color)}section{padding-top:20px;padding-bottom:10px}.project-page{max-width:90%;margin:auto}.card{padding-top:8px;padding-bottom:8px;justify-content:center;transition:transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s cubic-bezier(.2,.8,.2,1);will-change:transform,box-shadow;border-radius:12px;border:2px solid rgba(255,255,255,.04);background-color:#ffffff05;overflow:hidden;box-sizing:border-box;display:flex;flex-direction:column;align-items:stretch;height:var(--card-height)}.card-body{text-align:center;padding:16px;display:flex;flex-direction:column;justify-content:space-between;gap:.5rem}.card h4{margin:0 0 .5rem;font-size:.95rem;line-height:1.15;white-space:normal;overflow:visible;text-overflow:unset;word-break:break-word;flex:0 0 auto}.card-text{margin:0;color:#ffffffe6;font-size:.95rem;line-height:1.2;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;flex:1 1 auto}.card-img-top{width:100%;height:180px;object-fit:cover;display:block;transition:transform .22s cubic-bezier(.2,.8,.2,1);border-bottom:2px solid var(--primary-color);background:#000;box-sizing:border-box}@media (max-width: 600px){:root{--card-height: auto}.card{height:auto}.card-img-top{height:160px}}.scale-on-hover{display:block;transition:transform .22s cubic-bezier(.2,.8,.2,1);transform-origin:center center}@media (hover: hover) and (pointer: fine){.card:hover{transform:translateY(-8px);box-shadow:0 12px 28px #00000073,0 4px 8px #00000040;z-index:3}.card:hover .card-img-top,.card:hover .scale-on-hover{transform:scale(1.06)}.card:active{transform:translateY(-4px);transform:translate(-2px)}}.card:focus-within{transform:translateY(-6px);box-shadow:0 10px 24px #0006}#resume-link,#interactive-resume-link{padding-top:20px;padding-bottom:20px;max-width:400px;margin:20px auto}.portfolio-block.block-intro{text-align:center}.intro-box{background-image:linear-gradient(rgba(0,0,0,.5) 50%,transparent 50%);background-size:100% 4px;background-color:var(--background-color)}.gif-row{display:flex;flex-direction:column;align-items:center;gap:.5rem}.gif-row img{max-width:100%;height:auto;display:block}@keyframes fadeUpIn{0%{opacity:0;transform:translateY(8px) scale(.995)}to{opacity:1;transform:translateY(0) scale(1)}}@media (prefers-reduced-motion: no-preference){.gif-row img{opacity:0;transform:translateY(8px) scale(.995);animation:fadeUpIn .42s cubic-bezier(.2,.8,.2,1) forwards}.gif-row img:nth-child(1){animation-delay:0ms}.gif-row img:nth-child(2){animation-delay:80ms}.gif-row img:nth-child(3){animation-delay:.16s}}@media (min-width: 700px){.gif-row{flex-direction:row;justify-content:center;gap:1rem}.gif-row img{max-width:220px}}.row{display:flex;flex-wrap:wrap;margin-left:-.5rem;margin-right:-.5rem;gap:1rem 0}.row>[class*=col-]{box-sizing:border-box;padding-left:.5rem;padding-right:.5rem}.col-xs-12{flex:0 0 100%;max-width:100%}@media (min-width: 576px){.col-sm-6{flex:0 0 50%;max-width:50%}}@media (min-width: 768px){.col-md-4,.col-lg-4{flex:0 0 33.3333%;max-width:33.3333%}}@media (min-width: 768px){.row>.col-md-4{flex-basis:33.3333%!important;max-width:33.3333%!important}}
