.card{position:absolute;inset:0;overflow-y:auto;padding:2.5rem 3rem;scrollbar-width:none;-ms-overflow-style:none;transform:translateY(105%);transition:transform .55s cubic-bezier(.645,.045,.355,1),visibility 0s linear .55s;border-left:1px solid #1c1c1c;background:#0d0d0d}.card::-webkit-scrollbar{display:none}.rugiet-landing{background:#0d0d0d;z-index:10}.rugiet-start{background:#111;z-index:11}.our-rushmore,.co-angler{background:#0d0d0d;z-index:10}.code-labs-dash{background:#111;z-index:11}.youth-coding-league{background:#0a0a0a;z-index:12}.animate-card{transform:translateY(0);visibility:visible;transition:transform .55s cubic-bezier(.645,.045,.355,1),visibility 0s linear 0s}.hide-card{transform:translateY(105%);pointer-events:none;visibility:hidden}.card-title-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.inactive-badge{font-size:.65rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#6b6b6b;border:1px solid #2a2a2a;border-radius:999px;padding:.2em .65em;line-height:1;white-space:nowrap}.card h2{font-family:roobert,Roboto,sans-serif;font-weight:700;font-size:1.75rem;color:#f0f0f0;margin:0;line-height:1.2}.card-header{display:flex;justify-content:space-between;align-items:center;margin-top:.625rem}.sub-title{color:#7a7a7a;font-size:.875rem;font-family:roobert,sans-serif;margin:0}.close-button{color:#666;font-family:roobert,sans-serif;cursor:pointer;transition:color .2s;letter-spacing:.1em;text-transform:uppercase;font-size:.7rem;font-weight:600;user-select:none}.close-button:hover{color:#d0d0d0}.card-body{color:#a8a8a8;font-size:.938rem;line-height:1.8;margin-top:1.75rem}.view-site{margin-top:1.5rem;display:inline-block}.view-site-link{color:#d2df3c;font-size:.875rem;font-family:roobert,sans-serif;font-weight:600;display:flex;align-items:center;text-decoration:none;cursor:pointer;transition:color .2s;letter-spacing:.03em}.view-site-link:hover{color:#a5af32}.view-site-icon{margin-right:8px;width:18px;height:18px}.card-image-container{padding-top:2.5rem}.card-image{width:100%;border-radius:.5rem;opacity:1}@media (max-width: 900px){.card{position:fixed;inset:auto 0 0;height:80vh;border-radius:1rem 1rem 0 0;border-left:none;border-top:1px solid #1c1c1c;transform:translateY(100%);padding:2rem 1.5rem;z-index:100}.animate-card{transform:translateY(0);visibility:visible}.hide-card{transform:translateY(100%);pointer-events:none;visibility:hidden}.animate-card.card-hover,.animate-card.hover-card-co-angler,.animate-card.hover-card-code-labs-dash,.animate-card.hover-card-youth-coding-league{transform:translateY(0)}}.link-card{cursor:pointer;color:#a0a0a0;font-size:.875rem;transition:color .2s;display:inline-flex;align-items:center;gap:.3em}.link-card:after{content:"↗";font-size:.7em;opacity:0;transform:translateY(1px);transition:opacity .2s}.link-card:hover{color:#e8e8e8}.link-card:hover:after{opacity:1}.clicked-link{color:#e8e8e8}.clicked-link:after{opacity:1}*,*:before,*:after{box-sizing:border-box}body{background:#0d0d0d;margin:0}a{text-decoration:none;color:inherit}.container{display:grid;grid-template-columns:40% 60%;max-width:1200px;margin:0 auto;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;padding:5rem 3rem;display:flex;flex-direction:column}.sidebar-inner{display:flex;flex-direction:column;height:100%;justify-content:space-between}.sidebar-top{display:flex;flex-direction:column;gap:1.5rem;animation:fadeUp .5s ease-out both}h1{font-family:roobert,Roboto,sans-serif;font-size:2.25rem;font-weight:700;margin:0 0 .4rem;color:#f0f0f0;line-height:1.1}.sidebar-role{font-size:.875rem;font-weight:500;color:silver;margin:0 0 .2rem;line-height:1.4}.sidebar-stack{font-size:.75rem;font-weight:400;color:#5e5e5e;margin:0;letter-spacing:.02em}.sidebar-tagline{font-size:.875rem;color:#7a7a7a;margin:0;line-height:1.6}.sidebar-nav{display:flex;flex-direction:column;gap:.875rem;margin-top:.5rem}.nav-link{color:#5a5a5a;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;font-weight:600;transition:color .2s;display:flex;align-items:center;gap:.625rem}.nav-link:before{content:"";display:block;width:20px;height:1px;background:#5a5a5a;transition:width .25s ease,background .25s ease;flex-shrink:0}.nav-link:hover{color:#e8e8e8}.nav-link:hover:before{width:40px;background:#d2df3c}.sidebar-bottom{padding-bottom:.5rem;animation:fadeUp .5s ease-out .1s both}.contact-links{display:flex;gap:1.25rem}.contact-links a{color:#5a5a5a;font-size:.8rem;transition:color .2s;letter-spacing:.03em}.contact-links a:hover{color:#d2df3c}.content-panel{position:relative;height:100vh;overflow:hidden}.content-panel:after{content:"";position:absolute;bottom:0;left:0;right:0;height:80px;background:linear-gradient(to bottom,transparent,#0d0d0d);pointer-events:none;z-index:5}.content{height:100%;overflow-y:auto;padding:5rem 3rem 8rem;display:flex;flex-direction:column;gap:4.5rem;scrollbar-width:none;-ms-overflow-style:none}.content::-webkit-scrollbar{display:none}.content>.section{max-width:600px}.section{display:flex;flex-direction:column;gap:1rem;animation:fadeUp .6s ease-out both}.section:nth-child(1){animation-delay:.05s}.section:nth-child(2){animation-delay:.15s}.section:nth-child(3){animation-delay:.25s}.section-label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:#666;margin:0}p{font-size:.938rem;line-height:1.8;color:#b0b0b0;margin:0}.about__read-more{color:#d2df3c;transition:color .2s}.about__read-more:hover{color:#a5af32}.job{display:flex;flex-direction:column;gap:.375rem;padding:1rem;border-radius:.5rem;border:1px solid transparent;transition:border-color .2s,background .2s;margin:0 -1rem}.job+.job{border-top:1px solid #161616;margin-top:.25rem;padding-top:1.25rem}.job:hover{border-color:#1e1e1e;border-top-color:#1e1e1e;background:#111}.job-meta{display:flex;align-items:center;gap:.625rem}.job-date{font-size:.7rem;color:#555;text-transform:uppercase;letter-spacing:.08em;font-weight:600}.job-type-badge{font-size:.65rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#6b6b6b;border:1px solid #2a2a2a;border-radius:999px;padding:.2em .65em;line-height:1}.job-current-badge{font-size:.65rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#d2df3c;border:1px solid rgba(210,223,60,.3);border-radius:999px;padding:.2em .65em;line-height:1}.job--current{border-left:2px solid rgba(210,223,60,.4);padding-left:1rem;margin-left:-1rem}.job--current .job-role{color:#f0f0f0}.job--current .job-company{color:#9a9a9a}.job-details{display:flex;flex-direction:column;gap:.2rem}.job-role{font-size:.938rem;font-weight:600;color:#d8d8d8;margin:0;font-family:roobert,Roboto,sans-serif}.job-company{font-size:.85rem;color:#6b6b6b;transition:color .2s;letter-spacing:.02em}.job-company:hover{color:#d2df3c}.project-list{list-style:none;padding:0;margin:.875rem 0 0;display:flex;flex-direction:column;gap:.375rem}.link-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.875rem}.link-list a{font-size:.938rem;color:#b0b0b0;transition:color .2s}.link-list a:hover{color:#d2df3c}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 900px){.container{grid-template-columns:1fr}.sidebar{position:static;height:auto;padding:3rem 1.5rem 1.5rem}.sidebar-inner{gap:2rem}.sidebar-nav{display:none}.content-panel{position:static;height:auto;overflow:visible}.content-panel:after{display:none}.content{height:auto;overflow-y:visible;padding:2rem 1.5rem 5rem}.content>.section{max-width:none}.job{margin:0}.job--current{margin-left:0}}.cursor-pointer{cursor:pointer}.block{display:block}.hidden{display:none}
